X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fmisc%2Fnet.c;h=a34877d02747e3d84c0c7e9ce7937212bffedcd2;hb=e6a2e27bbb326744bbcfe0e464c32068dc41cbb4;hp=6735748724ef05038f569f9b5510a937b3b33c72;hpb=9fad47dcd802710f621133f4440163d0a345e2d1;p=vlc diff --git a/src/misc/net.c b/src/misc/net.c index 6735748724..a34877d027 100644 --- a/src/misc/net.c +++ b/src/misc/net.c @@ -1156,58 +1156,3 @@ static int SocksHandshakeTCP( vlc_object_t *p_obj, return VLC_SUCCESS; } -/***************************************************************************** - * __net_CheckIP - ***************************************************************************** - * Check that a given IP is within a set of IP/netmask. - *****************************************************************************/ -int __net_CheckIP( vlc_object_t *p_this, char *psz_ip, char **ppsz_hosts, - int i_hosts ) -{ - struct in_addr ip; - int i; - - if( (ip.s_addr = inet_addr( psz_ip )) == INADDR_NONE ) - { - return VLC_EGENERIC; - } - - for( i = 0; i < i_hosts; i++ ) - { - struct in_addr base, mask; - char *psz_host = strdup( ppsz_hosts[i] ); - char *p = strchr( psz_host, '/' ); - - if( p != NULL ) - { - int i_mask; - *p++ = '\0'; - i_mask = atoi(p); - if( i_mask < 0 || i_mask > 32 ) - { - msg_Err( p_this, "invalid netmask %s", p ); - mask.s_addr = INADDR_NONE; - } - else if( i_mask == 0 ) - mask.s_addr = INADDR_ANY; - else - mask.s_addr = htonl( ntohl(INADDR_NONE) << (32 - i_mask) ); - } - else - mask.s_addr = INADDR_NONE; - - if( (base.s_addr = inet_addr( psz_host )) == INADDR_NONE ) - { - msg_Err( p_this, "invalid base address %s", psz_host ); - free( psz_host ); - continue; - } - free( psz_host ); - - if( !((ip.s_addr ^ base.s_addr) & mask.s_addr) ) - return VLC_TRUE; - } - - return VLC_FALSE; -} -