diff options
Diffstat (limited to 'ghc/lib/misc/cbits/createSocket.c')
-rw-r--r-- | ghc/lib/misc/cbits/createSocket.c | 30 |
1 files changed, 3 insertions, 27 deletions
diff --git a/ghc/lib/misc/cbits/createSocket.c b/ghc/lib/misc/cbits/createSocket.c index ccab6887da..31e91b8283 100644 --- a/ghc/lib/misc/cbits/createSocket.c +++ b/ghc/lib/misc/cbits/createSocket.c @@ -19,33 +19,9 @@ createSocket(I_ family, I_ type, I_ protocol) if ((fd = socket((int)family, (int)type, (int)protocol)) < 0) { if (errno != EINTR) { cvtErrno(); - switch (ghc_errno) { - default: - stdErrno(); - break; - case GHC_EACCES: - ghc_errtype = ERR_PERMISSIONDENIED; - ghc_errstr = "cannot create socket"; - break; - case GHC_EMFILE: - ghc_errtype = ERR_RESOURCEEXHAUSTED; - ghc_errstr = "Too many open files"; - break; - case GHC_ENFILE: - ghc_errtype = ERR_RESOURCEEXHAUSTED; - ghc_errstr = "System file table overflow"; - break; - case GHC_EPROTONOSUPPORT: - ghc_errtype = ERR_UNSUPPORTEDOPERATION; - ghc_errstr = "Protocol type not supported"; - break; - case GHC_EPROTOTYPE: - ghc_errtype = ERR_INAPPROPRIATETYPE; - ghc_errstr = "Protocol wrong type for socket"; - break; - } - return (StgInt)-1; + stdErrno(); + return -1; } } - return (StgInt)fd; + return fd; } |