summaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/network.c
diff options
context:
space:
mode:
authorBruce Momjian2004-10-08 01:10:31 +0000
committerBruce Momjian2004-10-08 01:10:31 +0000
commitf4f6caa9b02af8313b3fa0f76f069b614cb98095 (patch)
treed0fc39b9e54e11d853aec99bc423c934fd92f517 /src/backend/utils/adt/network.c
parent050beacc6eae5deaf2661bfe2a9b73f3658515fb (diff)
Do proper testing of CIDR bits against network mask, e.g. don't allow:
test=# select '204.248.199.1/31'::cidr; Previous releases erroneously accepted such addresses. WARN IN RELEASE NOTES Kevin Brintnall
Diffstat (limited to 'src/backend/utils/adt/network.c')
-rw-r--r--src/backend/utils/adt/network.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/backend/utils/adt/network.c b/src/backend/utils/adt/network.c
index ec00f55fe86..dc83d7028c5 100644
--- a/src/backend/utils/adt/network.c
+++ b/src/backend/utils/adt/network.c
@@ -1,7 +1,7 @@
/*
* PostgreSQL type definitions for the INET and CIDR types.
*
- * $PostgreSQL: pgsql/src/backend/utils/adt/network.c,v 1.53 2004/08/29 05:06:49 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/adt/network.c,v 1.54 2004/10/08 01:10:31 momjian Exp $
*
* Jon Postel RIP 16 Oct 1998
*/
@@ -942,7 +942,7 @@ addressOK(unsigned char *a, int bits, int family)
if (bits == maxbits)
return true;
- byte = (bits + 7) / 8;
+ byte = bits / 8;
nbits = bits % 8;
mask = 0xff;
if (bits != 0)