libc.pyx
changeset 4 664a1dfe08ac
parent 0 975801b28d85
child 5 59bed837c265
--- a/libc.pyx	Sun Aug 16 03:39:52 2009 +0300
+++ b/libc.pyx	Sun Aug 16 04:15:07 2009 +0300
@@ -10,14 +10,14 @@
 
     if c_inet_ntop(af, sockaddr, buf, sizeof(buf)) == NULL :
         # XXX: errno?
-        raise OSError()
+        raise OSError(errno)
     
     # autoconvert -> str
     return buf
 
 cdef object inet_pton (int af, char *addr, void *sockaddr_out) :
-    if c_inet_pton(af, addr, sockaddr_out) < 0 :
-        raise OSError()
+    if c_inet_pton(af, addr, sockaddr_out) <= 0 :
+        raise NameError("Invalid network address for specified address family: %r" % (addr, ))
 
 cdef object getnameinfo (sockaddr *sa, socklen_t salen, int flags) :
     cdef char hostbuf[NI_MAXHOST]