diff options
Diffstat (limited to 'ghc/lib/misc/cbits/getSockName.c')
-rw-r--r-- | ghc/lib/misc/cbits/getSockName.c | 48 |
1 files changed, 0 insertions, 48 deletions
diff --git a/ghc/lib/misc/cbits/getSockName.c b/ghc/lib/misc/cbits/getSockName.c deleted file mode 100644 index 161434eb12..0000000000 --- a/ghc/lib/misc/cbits/getSockName.c +++ /dev/null @@ -1,48 +0,0 @@ -#if 0 -% -% (c) The GRASP/AQUA Project, Glasgow University, 1996 -% -\subsection[getSockName.lc]{Return name of process assoc with socket} - -\begin{code} -#endif - -#define NON_POSIX_SOURCE -#include "Rts.h" -#include "ghcSockets.h" -#include "stgio.h" - -StgInt -getSockName(I_ sockfd, A_ peer, A_ namelen) -{ - StgInt name; - - while ((name = getsockname((int) sockfd, (struct sockaddr *) peer, (int *) namelen)) < 0) { - if (errno != EINTR) { - cvtErrno(); - switch (ghc_errno) { - default: - stdErrno(); - break; - case GHC_EBADF: - ghc_errtype = ERR_INVALIDARGUMENT; - ghc_errstr = "Not a valid write descriptor"; - break; - case GHC_EFAULT: - ghc_errtype = ERR_INVALIDARGUMENT; - ghc_errstr = "Data not in writeable part of user address space"; - break; - case GHC_ENOBUFS: - ghc_errtype = ERR_RESOURCEEXHAUSTED; - ghc_errstr = "Insuffcient resources"; - break; - case GHC_ENOTSOCK: - ghc_errtype = ERR_INVALIDARGUMENT; - ghc_errstr = "Descriptor is not a socket"; - break; - } - return -1; - } - } - return name; -} |