rem: if ( check_inverse(optarg, &invert) ) {
add: if ( check_inverse(optarg, &invert, NULL, 0) ) {
context: static int parse(int c, char **argv, int invert, unsigned int *flags,		 const struct ipt_entry *entry,		 struct ipt_entry_target **target){	struct ipt_nldata *nld=(struct ipt_nldata *)(*target)->data;	switch (c) {		case 'd':			if (MASK(*flags, USE_DROP))				exit_error(PARAMETER_PROBLEM,				"Can't specify --nldrop twice");			if ( check_inverse(optarg, &invert) ) {				MASK_UNSET(nld->flags, USE_DROP);			} else {				MASK_SET(nld->flags, USE_DROP);			}			MASK_SET(*flags, USE_DROP);						break;		case 'm':			if (MASK(*flags, USE_MARK))				exit_error(PARAMETER_PROBLEM,				"Can't specify --nlmark twice");			if (check_inverse(optarg, &invert)) {				MASK_UNSET(nld->flags, USE_MARK);			}else{				MASK_SET(nld->flags, USE_MARK);				nld->mark=atoi(optarg);			}			MASK_SET(*flags, USE_MARK);			break;		case 's':			if (MASK(*flags, USE_SIZE))				exit_error(PARAMETER_PROBLEM,				"Can't specify --nlsize twice");			if ( atoi(optarg) <= 0 )				exit_error(PARAMETER_PROBLEM,				"--nlsize must be larger than zero");						if (check_inverse(optarg, &invert)) {				MASK_UNSET(nld->flags, USE_SIZE);			}else{				MASK_SET(nld->flags, USE_SIZE);				nld->size=atoi(optarg);			}			MASK_SET(*flags, USE_SIZE);			break;		default:			return 0;	}	return 1;}