diff options
Diffstat (limited to 'ghc/lib/misc/cbits/sendTo.c')
-rw-r--r-- | ghc/lib/misc/cbits/sendTo.c | 39 |
1 files changed, 3 insertions, 36 deletions
diff --git a/ghc/lib/misc/cbits/sendTo.c b/ghc/lib/misc/cbits/sendTo.c index 1abe017b28..e9e719b765 100644 --- a/ghc/lib/misc/cbits/sendTo.c +++ b/ghc/lib/misc/cbits/sendTo.c @@ -25,42 +25,9 @@ StgInt sz; while ( (count = sendto((int)fd, (void*)buf, (int)nbytes, flags, (struct sockaddr*)to, sz)) < 0) { if (errno != EINTR) { cvtErrno(); - switch (ghc_errno) { - case GHC_EBADF: - ghc_errtype = ERR_INVALIDARGUMENT; - ghc_errstr = "Not a valid read descriptor"; - break; - case GHC_EBADMSG: - ghc_errtype = ERR_SYSTEMERROR; - ghc_errstr = "Message waiting to be read is not a data message"; - break; - case GHC_EFAULT: - ghc_errtype = ERR_INVALIDARGUMENT; - ghc_errstr = "Data buffer not in readable part of user address space"; - break; - case GHC_EINVAL: - ghc_errtype = ERR_INVALIDARGUMENT; - ghc_errstr = "Seek pointer associated with descriptor negative"; - break; - case GHC_EIO: - ghc_errtype = ERR_SYSTEMERROR; - ghc_errstr = "I/O error occurred while reading"; - break; - case GHC_EISDIR: - ghc_errtype = ERR_INAPPROPRIATETYPE; - ghc_errstr = "Descriptor refers to a directory"; - break; - case GHC_EAGAIN: - case GHC_EWOULDBLOCK: - ghc_errtype = ERR_OTHERERROR; - ghc_errstr = "No data could be read immediately"; - break; - default: - stdErrno(); - break; - } + stdErrno(); return -1; } - } - return count; + } + return count; } |