Hello,

My fix intended that Haskell code behaves the same in various
environments. That is, one socket catches both IPv4 and IPv6. And the
fix works even in both IPv4-only env and IPv6-only env.

Johan's observation is correct. Network.listenOn is alreay fixed but
Network.Socket.listen, which Warp relies on, is not fixed yet. I will
try to fix it. When the next version of the network library will be
released, the problem will disappear, I hope.

--Kazu

> Hi Michael,
> 
> Kazu recently fixed this (in the stable branch on GitHub) in Network.listenOn
> but perhaps the more basic Network.Socket.listen should also be changed. Lets
> discuss what's the right thing to do in this thread.
> 
> On Wed, Sep 21, 2011 at 1:38 PM, Michael Snoyman <mich...@snoyman.com> wrote:
> 
>> Hi,
>> 
>> One of the recurring issues that comes up in Warp is binding to IPv4
>> versus IPv6 hosts. Our current code is available at [1]. It was
>> updated to look like that in this commit [2] in order to support both
>> IPv4 and IPv6 hosts by default. However, now it seems than on Debian
>> and FreeBSD, it *only* responds to IPv6 by default[3][4]. I'm frankly
>> stumped at this point on how to have our cake and eat it too.
>> 
>> Does anyone have an idea of the correct incantation to get Warp to do
>> the Right Thing(tm) here? And if not, is there any advice on sensible
>> default behavior? I'm considering allowing a few special host values:
>> 
>> * "*" (default, what we have now): Make this bind to IPv4
>> * "ipv4": Again, bind to IPv4. Guaranteed not to change in the future
>> * "ipv6": Bind to IPv6.
>> 
>> Michael
>> 
>> [1] https://github.com/yesodweb/wai/blob/master/warp/Network/Wai/Handler/
> Warp.hs#L119
>> [2] https://github.com/snoyberg/warp/commit/
> 02c1396c86e3fceb48cbe7df58cb631c804e24d4
>> [3] https://github.com/snoyberg/warp/issues/9
>> [4] http://stackoverflow.com/questions/7486257/
> yesod-devel-server-only-listening-on-ipv6
>> 
>> _______________________________________________
>> Haskell-Cafe mailing list
>> Haskell-Cafe@haskell.org
>> http://www.haskell.org/mailman/listinfo/haskell-cafe
> 

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to