when packing an ip_address() for io, the bits value is wrongly stored as a /0 instead of /32 or /128 the following will fix this: ``` --- /usr/lib/python3.4/site-packages/postgresql/types/io/lib.py.orig 2014-06-02 12:42:50.783337348 +0000 +++ /usr/lib/python3.4/site-packages/postgresql/types/io/lib.py 2014-06-02 12:56:30.460003975 +0000 @@ -283,7 +283,9 @@ Pack Postgres' inet/cidr data structure. """ family, mask, data = triple - return bytes((fmap[family], mask or 0, 0 if mask is None else 1, len(data))) + data + mflag = mask and 1 or 0 + mask = mask and mask or {4:32, 6:128}[family] + return bytes((fmap[family], mask, mflag, len(data))) + data def net_unpack(data, # Map IP version number to PGSQL src/include/utils/inet.h. ``` the original code stores "1.2.3.4" as "1.2.3.4/0" instead of "1.2.3.4/32". the above fix will store the correct bits value