109 if (n_flag && !a_flag) {
110 usage();
111 exit(1);
112 }
113
114 argsleft = argc - optind;
115
116 if (a_flag && (argsleft == 0)) {
117 /*
118 * the easiest way to get the complete arp table
119 * is to let netstat, which prints it as part of
120 * the MIB statistics, do it.
121 */
122 char netstat_path[MAXPATHLEN];
123 const char *zroot = zone_get_nroot();
124 (void) snprintf(netstat_path, sizeof (netstat_path), "%s%s", zroot != NULL ?
125 zroot : "", "/usr/bin/netstat");
126 (void) execl(netstat_path, "netstat",
127 (n_flag ? "-np" : "-p"),
128 "-f", "inet", (char *)0);
129 (void) fprintf(stderr, "failed to exec netstat: %s\n",
130 strerror(errno));
131 exit(1);
132
133 } else if (s_flag && (argsleft >= 2)) {
134 if (set(argsleft, &argv[optind]) != 0)
135 exit(1);
136
137 } else if (d_flag && (argsleft == 1)) {
138 delete(argv[optind]);
139
140 } else if (f_flag && (argsleft == 1)) {
141 if (file(argv[optind]) != 0)
142 exit(1);
143
144 } else if ((nflags == 0) && (argsleft == 1)) {
145 get(argv[optind]);
146
147 } else {
148 usage();
149 exit(1);
150 }
|
109 if (n_flag && !a_flag) {
110 usage();
111 exit(1);
112 }
113
114 argsleft = argc - optind;
115
116 if (a_flag && (argsleft == 0)) {
117 /*
118 * the easiest way to get the complete arp table
119 * is to let netstat, which prints it as part of
120 * the MIB statistics, do it.
121 */
122 char netstat_path[MAXPATHLEN];
123 const char *zroot = zone_get_nroot();
124 (void) snprintf(netstat_path, sizeof (netstat_path), "%s%s", zroot != NULL ?
125 zroot : "", "/usr/bin/netstat");
126 (void) execl(netstat_path, "netstat",
127 (n_flag ? "-np" : "-p"),
128 "-f", "inet", (char *)0);
129 (void) fprintf(stderr, "failed to exec %s: %s\n",
130 netstat_path, strerror(errno));
131 exit(1);
132
133 } else if (s_flag && (argsleft >= 2)) {
134 if (set(argsleft, &argv[optind]) != 0)
135 exit(1);
136
137 } else if (d_flag && (argsleft == 1)) {
138 delete(argv[optind]);
139
140 } else if (f_flag && (argsleft == 1)) {
141 if (file(argv[optind]) != 0)
142 exit(1);
143
144 } else if ((nflags == 0) && (argsleft == 1)) {
145 get(argv[optind]);
146
147 } else {
148 usage();
149 exit(1);
150 }
|