int inttunnel(char *ifname, int ifs, int argc, char **argv) { int set; if (NO_ARG(argv[0])) { set = 0; argc--; argv++; } else set = 1; argc--; argv++; if (((set && argc !=2 && argc != 4) || (set && argc == 4 && !isprefix(argv[2], "rdomain"))) || (!set && argc > 4)) { printf("%% tunnel <src ip> <dest ip> [rdomain <domain>]\n"); printf("%% no tunnel [src ip] [dest ip] [rdomain <domain>]\n"); return(0); } if(set && argc == 2) settunnel(ifs, ifname, argv[0], argv[1], NULL); else if(set && argc == 4) settunnel(ifs, ifname, argv[0], argv[1], argv[3]); else deletetunnel(ifs, ifname); return(0); }
int inttunnel(char *ifname, int ifs, int argc, char **argv) { int set; if (NO_ARG(argv[0])) { set = 0; argc--; argv++; } else set = 1; argc--; argv++; if ((set && argc != 2) || (!set && argc > 2)) { printf("%% tunnel <src ip> <dest ip>\n"); printf("%% no tunnel [src ip] [dest ip]\n"); return(0); } if(set) settunnel(ifs, ifname, argv[0], argv[1]); else deletetunnel(ifs, ifname); return(0); }