--- extensions/libipt_connmark.c.connmark 2003-02-23 21:51:05.000000000 -0500 +++ extensions/libipt_connmark.c 2003-02-24 01:37:38.000000000 -0500 @@ -46,13 +46,13 @@ char *end; case '1': check_inverse(optarg, &invert, &optind, 0); - markinfo->mark = strtoul(optarg, &end, 0); + markinfo->mark = strtoul(argv[optind-1], &end, 0); if (*end == '/') { markinfo->mask = strtoul(end+1, &end, 0); } else markinfo->mask = 0xffffffff; - if (*end != '\0' || end == optarg) - exit_error(PARAMETER_PROBLEM, "Bad MARK value `%s'", optarg); + if (*end != '\0' || end == argv[optind-1]) + exit_error(PARAMETER_PROBLEM, "Bad MARK value `%s'", argv[optind-1]); if (invert) markinfo->invert = 1; *flags = 1; @@ -68,7 +68,7 @@ print_mark(unsigned long mark, unsigned long mask, int invert, int numeric) { if (invert) - fputc('!', stdout); + fputs("! ", stdout); if(mask != 0xffffffff) printf("0x%lx/0x%lx ", mark, mask);