Thread: netmask(inet) function broken in 7.4

netmask(inet) function broken in 7.4

From
Joe Sunday
Date:
============================================================================
                        POSTGRESQL BUG REPORT TEMPLATE
============================================================================


Your name        :    Joe Sunday
Your email address    :    sunday@csh.rit.edu


System Configuration
---------------------
  Architecture (example: Intel Pentium)      : UltraSparc II

  Operating System (example: Linux 2.0.26 ELF)     : Solaris 9

  PostgreSQL version (example: PostgreSQL-7.4):   PostgreSQL-7.4

  Compiler used (example:  gcc 2.95.2)        : gcc 2.95.3


Please enter a FULL description of your problem:
------------------------------------------------
After upgrading to 7.4 from 7.3.4, the behaviour of the netmask(inet) function changed,
but the documentation still specifies the old behaviour (which seems more correct than the
new version)

Old:
netmask( '192.168.1.0/23' ) returns '255.255.254.0'

New:
netmask( '192.168.1.0/23' ) returns '255.255.254.0/23'

Please describe a way to repeat the problem.   Please try to provide a
concise reproducible example, if at all possible:
----------------------------------------------------------------------

Perform a SELECT using the netmask function with the example above.

If you know how this problem might be fixed, list the solution below:
---------------------------------------------------------------------
Revert netmask to the prior behaviour, or update the documentation to match the new
behaviour. Masklen(inet) already returns just the mask length for CIDR-style addressing,
netmask(inet) should just return a mask without the redundant length.

--
Joe Sunday <sunday@csh.rit.edu>  http://www.csh.rit.edu/~sunday/
Computer Science House, Rochester Inst. Of Technology

Re: netmask(inet) function broken in 7.4

From
Bruce Momjian
Date:
This will be fixed in 7.4.1.

---------------------------------------------------------------------------

Joe Sunday wrote:
>
> ============================================================================
>                         POSTGRESQL BUG REPORT TEMPLATE
> ============================================================================
>
>
> Your name        :    Joe Sunday
> Your email address    :    sunday@csh.rit.edu
>
>
> System Configuration
> ---------------------
>   Architecture (example: Intel Pentium)      : UltraSparc II
>
>   Operating System (example: Linux 2.0.26 ELF)     : Solaris 9
>
>   PostgreSQL version (example: PostgreSQL-7.4):   PostgreSQL-7.4
>
>   Compiler used (example:  gcc 2.95.2)        : gcc 2.95.3
>
>
> Please enter a FULL description of your problem:
> ------------------------------------------------
> After upgrading to 7.4 from 7.3.4, the behaviour of the netmask(inet) function changed,
> but the documentation still specifies the old behaviour (which seems more correct than the
> new version)
>
> Old:
> netmask( '192.168.1.0/23' ) returns '255.255.254.0'
>
> New:
> netmask( '192.168.1.0/23' ) returns '255.255.254.0/23'
>
> Please describe a way to repeat the problem.   Please try to provide a
> concise reproducible example, if at all possible:
> ----------------------------------------------------------------------
>
> Perform a SELECT using the netmask function with the example above.
>
> If you know how this problem might be fixed, list the solution below:
> ---------------------------------------------------------------------
> Revert netmask to the prior behaviour, or update the documentation to match the new
> behaviour. Masklen(inet) already returns just the mask length for CIDR-style addressing,
> netmask(inet) should just return a mask without the redundant length.
>
> --
> Joe Sunday <sunday@csh.rit.edu>  http://www.csh.rit.edu/~sunday/
> Computer Science House, Rochester Inst. Of Technology
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org
>

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073