X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=command.c;h=e3b15a5ae0e44985a6279ac2f8e137d19fb3c9be;hp=1ca54da90191fd270c98b3001d16a4b5f5c04c53;hb=0b36e0a77fc750af85e969efda7bda0931f389d0;hpb=09b7971c7a862924d4ce669f8a33bda567ba570b diff --git a/command.c b/command.c index 1ca54da9..e3b15a5a 100644 --- a/command.c +++ b/command.c @@ -185,17 +185,9 @@ static int check_sender_args(int argc, char * const * argv, struct sender_comman break; case SENDER_DENY: case SENDER_ALLOW: - if (argc != 4 && argc != 5) + if (argc != 4 || parse_cidr(argv[3], scd->host, + sizeof(scd->host), &scd->netmask) == NULL) return -E_COMMAND_SYNTAX; - if (!is_valid_ipv4_address(argv[3])) - return -E_COMMAND_SYNTAX; - scd->netmask = 32; - if (argc == 5) { - scd->netmask = atoi(argv[4]); - if (scd->netmask < 0 || scd->netmask > 32) - return -E_COMMAND_SYNTAX; - } - strncpy(scd->host, argv[3], sizeof(scd->host)); break; case SENDER_ADD: case SENDER_DELETE: