Lines Matching refs:value
91 static void setenv_option(); /* execute "setenv name value" */
93 static void severity_option(); /* execute "severity value" */
144 char *value;
154 * Separate the option into name and value parts. For backwards
155 * compatibility we ignore exactly one '=' between name and value.
158 if (*(value = curr_opt + strcspn(curr_opt, whitespace_eq))) {
159 if (*value != '=') {
160 *value++ = 0;
161 value += strspn(value, whitespace);
163 if (*value == '=') {
164 *value++ = 0;
165 value += strspn(value, whitespace);
168 if (*value == 0)
169 value = 0;
187 if (!value && need_arg(op))
188 tcpd_jump("option \"%s\" requires value", key);
189 if (value && !permit_arg(op))
190 tcpd_jump("option \"%s\" requires no value", key);
193 if (value && expand_arg(op))
194 value = chop_string(percent_x(bf, sizeof(bf), value, request));
196 syslog(LOG_DEBUG, "option: %s %s", key, value ? value : "");
197 (*(op->func)) (value, request);
205 static void allow_option(value, request)
206 char *value;
216 static void deny_option(value, request)
217 char *value;
225 static void banners_option(value, request)
226 char *value;
236 sprintf(path, "%s/%s", value, eval_daemon(request));
248 } else if (stat(value, &st) < 0) {
249 tcpd_warn("%s: %m", value);
257 static void group_option(value, request)
258 char *value;
264 if ((grp = getgrnam(value)) == 0)
265 tcpd_jump("unknown group: \"%s\"", value);
269 tcpd_jump("setgid(%s): %m", value);
276 static void user_option(value, request)
277 char *value;
284 if ((group = split_at(value, '.')) != 0)
286 if ((pwd = getpwnam(value)) == 0)
287 tcpd_jump("unknown user: \"%s\"", value);
291 tcpd_jump("setuid(%s): %m", value);
298 static void umask_option(value, request)
299 char *value;
305 if (sscanf(value, "%o%c", &mask, &junk) != 1 || (mask & 0777) != mask)
306 tcpd_jump("bad umask value: \"%s\"", value);
314 static void spawn_option(value, request)
315 char *value;
319 shell_cmd(value);
326 static void linger_option(value, request)
327 char *value;
333 if (sscanf(value, "%d%c", &linger.l_linger, &junk) != 1
335 tcpd_jump("bad linger value: \"%s\"", value);
348 static void keepalive_option(value, request)
349 char *value;
359 /* nice_option - set nice value */
363 static void nice_option(value, request)
364 char *value;
370 if (value != 0 && sscanf(value, "%d%c", &niceval, &junk) != 1)
371 tcpd_jump("bad nice value: \"%s\"", value);
378 static void twist_option(value, request)
379 char *value;
390 syslog(deny_severity, "twist %s to %s", eval_client(request), value);
403 (void) execl("/bin/sh", "sh", "-c", value, (char *) 0);
416 static void rfc931_option(value, request)
417 char *value;
423 if (value != 0) {
424 if (sscanf(value, "%d%c", &timeout, &junk) != 1 || timeout <= 0)
425 tcpd_jump("bad rfc931 timeout: \"%s\"", value);
435 static void setenv_option(value, request)
436 char *value;
442 if (*(var_value = value + strcspn(value, whitespace)))
444 if (setenv(chop_string(value), chop_string(var_value), 1))
455 int value;
541 /* severity_map - lookup facility or severity value */
551 return (t->value);
560 static void severity_option(value, request)
561 char *value;
564 char *level = split_at(value, '.');
567 severity_map(log_fac, value) | severity_map(log_sev, level) :
568 severity_map(log_sev, value);