Added to TODO list:

        * Prevent INET cast to CIDR from droping netmask, SELECT
          '1.1.1.1'::inet::cidr

It is probably related to the TODO item above it:
        
        * Prevent INET cast to CIDR if the unmasked bits are not zero, or
          zero the bits

I think the original code thought CIDR and INET where identical types
that could be cast with no changes but we are finding that was incorrect.

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

Alexander M. Pravking wrote:
> It looks a bit strange that CIDR output depends on datatype it has been
> casted from:
> 
> fduch=# SELECT '1.1.1.1'::cidr;
>     cidr
> ------------
>  1.1.1.1/32
> (1 row)
> 
> fduch=# SELECT '1.1.1.1'::inet::cidr;
>   cidr
> ---------
>  1.1.1.1
> (1 row)
> 
> 
> However these two seem to be 'equal' in terms of backend:
> 
> fduch=# SELECT '1.1.1.1'::inet::cidr = '1.1.1.1'::inet;
>  ?column?
> ----------
>  t
> (1 row)
> 
> fduch=# SELECT '1.1.1.1'::inet::cidr = '1.1.1.1'::cidr;
>  ?column?
> ----------
>  t
> (1 row)
> 
> 
> I'm just curious how can it even be...
> 
> fduch=# SELECT version();
>                                             version
> ------------------------------------------------------------------------------------------------
>  PostgreSQL 7.4.5 on i386-portbld-freebsd5.3, compiled by GCC cc (GCC) 3.4.2 
> [FreeBSD] 20040728
> 
> 
> -- 
> Fduch M. Pravking
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster
> 

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

---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
    (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])

Reply via email to