Deleted Added
full compact
20c20
< * $Id: filter.c,v 1.25 1998/06/27 12:03:48 brian Exp $
---
> * $Id: filter.c,v 1.26 1998/10/22 02:32:48 brian Exp $
25c25
< #include <sys/types.h>
---
> #include <sys/param.h>
56a57,59
> #ifndef NORADIUS
> #include "radius.h"
> #endif
73a77,85
> struct in_addr
> bits2mask(int bits)
> {
> struct in_addr result;
>
> result.s_addr = htonl(netmasks[bits]);
> return result;
> }
>
75c87
< ParseAddr(struct ipcp *ipcp, int argc, char const *const *argv,
---
> ParseAddr(struct ipcp *ipcp, const char *data,
82,86d93
< if (argc < 1) {
< log_Printf(LogWARN, "ParseAddr: address/mask is expected.\n");
< return (0);
< }
<
90,91c97,98
< cp = pmask || pwidth ? strchr(*argv, '/') : NULL;
< len = cp ? cp - *argv : strlen(*argv);
---
> cp = pmask || pwidth ? strchr(data, '/') : NULL;
> len = cp ? cp - data : strlen(data);
93c100
< if (ipcp && strncasecmp(*argv, "HISADDR", len) == 0)
---
> if (ipcp && strncasecmp(data, "HISADDR", len) == 0)
95c102
< else if (ipcp && strncasecmp(*argv, "MYADDR", len) == 0)
---
> else if (ipcp && strncasecmp(data, "MYADDR", len) == 0)
98c105
< log_Printf(LogWARN, "ParseAddr: %s: Bad address\n", *argv);
---
> log_Printf(LogWARN, "ParseAddr: %s: Bad address\n", data);
101c108
< strncpy(s, *argv, len);
---
> strncpy(s, data, len);
128c135
< pmask->s_addr = htonl(netmasks[bits]);
---
> *pmask = bits2mask(bits);
305c312
< if (filterdata.action == A_DENY) {
---
> if (argc && filterdata.action == A_DENY) {
315a323
>
318,319c326,329
< if (ParseAddr(ipcp, argc, argv, &filterdata.saddr, &filterdata.smask,
< &filterdata.swidth)) {
---
> if (!argc)
> log_Printf(LogWARN, "Parse: address/mask is expected.\n");
> else if (ParseAddr(ipcp, *argv, &filterdata.saddr, &filterdata.smask,
> &filterdata.swidth)) {
323,324c333,336
< if (proto == P_NONE) {
< if (ParseAddr(ipcp, argc, argv, &filterdata.daddr, &filterdata.dmask,
---
> if (!argc)
> log_Printf(LogWARN, "Parse: address/mask is expected.\n");
> else if (proto == P_NONE) {
> if (ParseAddr(ipcp, *argv, &filterdata.daddr, &filterdata.dmask,
330c342
< if (proto != P_NONE) {
---
> if (argc && proto != P_NONE) {