/* Copyright (c) 1998, Ruslan R. Laishev (@RRL) */ #include "nntp.h" /* *-------------------------------------------------------------------------------- */ int chk_IP_prot ( char *ipadr, int ipadrlen, char *ipname, int ipnamelen ) { int masklen,i,status; char *mask; /* ** Check with IP addres */ if ( !nntp_conf._s_clnt_list.dsc$w_length ) return 1; for (i = 0;masklen=strelem(&nntp_conf._s_clnt_list,'|',i,&mask); i++) { // NNTP_LOG(LOGD,"%.*s vs %.*s",ipadrlen,ipadr,masklen,mask); if ( status = strmatch(mask,masklen,ipadr,ipadrlen) ) return 0; } if ( !ipname || !ipnamelen ) return 1; /* ** Check with IP name */ for (i = 0;masklen=strelem(&nntp_conf._s_clnt_list,'|',i,&mask); i++) { // NNTP_LOG(LOGD,"%.*s vs %.*s",ipnamelen,ipname,masklen,mask); if ( status = strmatch(mask,masklen,ipname,ipnamelen) ) return 0; } return 1; }