Lines Matching +full:- +full:- +full:arg +full:- +full:file

1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
4 * Copyright (c) 1996 - 2001 Brian Somers <brian@Awfulhak.org>
5 * based on work by Toshiharu OHNO <tony-o@iij.ad.jp>
48 FILE *
49 OpenSecret(const char *file) in OpenSecret() argument
51 FILE *fp; in OpenSecret()
54 snprintf(line, sizeof line, "%s/%s", PPP_CONFDIR, file); in OpenSecret()
62 CloseSecret(FILE *fp) in CloseSecret()
79 endto = to + LINE_LEN - 1; in InterpretArg()
109 len = ptr - from - 2; in InterpretArg()
110 if (endto - to < (int)len ) in InterpretArg()
111 len = endto - to; in InterpretArg()
133 strncpy(to, env, endto - to); in InterpretArg()
141 len = ptr ? (size_t)(ptr - from) : strlen(from); in InterpretArg()
152 strncpy(to, pwd->pw_dir, endto - to); in InterpretArg()
167 to--; in InterpretArg()
182 DecodeCtrlCommand(char *line, char *arg) in DecodeCtrlCommand() argument
187 end = InterpretArg(line+8, arg); in DecodeCtrlCommand()
205 AllowUsers(struct cmdargs const *arg) in AllowUsers() argument
207 /* arg->bundle may be NULL (see system_IsValid()) ! */ in AllowUsers()
211 if (userok == -1) in AllowUsers()
216 for (f = arg->argn; f < arg->argc; f++) in AllowUsers()
217 if (!strcmp("*", arg->argv[f]) || !strcmp(pwd->pw_name, arg->argv[f])) { in AllowUsers()
227 AllowModes(struct cmdargs const *arg) in AllowModes() argument
229 /* arg->bundle may be NULL (see system_IsValid()) ! */ in AllowModes()
233 for (f = arg->argn; f < arg->argc; f++) { in AllowModes()
234 mode = Nam2mode(arg->argv[f]); in AllowModes()
236 log_Printf(LogWARN, "allow modes: %s: Invalid mode\n", arg->argv[f]); in AllowModes()
251 while (len && (line[len-1] == '\n' || line[len-1] == '\r' || in strip()
252 issep(line[len-1]))) in strip()
253 line[--len] = '\0'; in strip()
265 xgets(char *buf, int buflen, FILE *fp) in xgets()
270 while (fgets(buf, buflen-1, fp)) { in xgets()
272 buf[buflen-1] = '\0'; in xgets()
274 while (len && (buf[len-1] == '\n' || buf[len-1] == '\r')) in xgets()
275 buf[--len] = '\0'; in xgets()
276 if (len && buf[len-1] == '\\') { in xgets()
277 buf += len - 1; in xgets()
278 buflen -= len - 1; in xgets()
303 if (argc != 1 || (len = strlen(argv[0])) < 2 || argv[0][len-1] != ':') { in GetLabel()
304 log_Printf(LogWARN, "Bad label in %s (line %d) - missing colon\n", in GetLabel()
308 argv[0][len-1] = '\0'; /* Lose the ':' */ in GetLabel()
313 /* Returns -2 for ``file not found'' and -1 for ``label not found'' */
316 ReadSystem(struct bundle *bundle, const char *name, const char *file, in ReadSystem() argument
319 FILE *fp; in ReadSystem()
329 char arg[LINE_LEN]; in ReadSystem() local
332 if (*file == '/') in ReadSystem()
333 snprintf(filename, sizeof filename, "%s", file); in ReadSystem()
335 snprintf(filename, sizeof filename, "%s/%s", PPP_CONFDIR, file); in ReadSystem()
339 return -2; in ReadSystem()
356 switch (DecodeCtrlCommand(cp+1, arg)) { in ReadSystem()
358 log_Printf(LogCOMMAND, "%s: Including \"%s\"\n", filename, arg); in ReadSystem()
359 n = ReadSystem(bundle, name, arg, prompt, cx, how); in ReadSystem()
360 log_Printf(LogCOMMAND, "%s: Done include of \"%s\"\n", filename, arg); in ReadSystem()
397 if ((argc = command_Expand_Interpret(cp, len, argv, cp - line)) < 0) in ReadSystem()
416 fclose(fp); /* everything read - get out */ in ReadSystem()
423 return -1; in ReadSystem()
431 * functions. arg->bundle will be set to NULL for these commands ! in system_IsValid()
438 userok = -1; in system_IsValid()
445 userok = -1; in system_IsValid()
448 if (rs == -1) in system_IsValid()
454 if (rs == -1) in system_IsValid()
457 if (rs == -2) in system_IsValid()
458 return PPP_CONFDIR "/" CONFFILE " : File not found"; in system_IsValid()
461 if (userok == -1) in system_IsValid()
477 system_Select(struct bundle *bundle, const char *name, const char *file, in system_Select() argument
482 return ReadSystem(bundle, name, file, prompt, cx, SYSTEM_EXEC); in system_Select()