Commit | Line | Data |
---|---|---|
6b5d96c8 JSP |
1 | /* |
2 | * Copyright (c) 1992 The Regents of the University of California | |
3 | * Copyright (c) 1990, 1992 Jan-Simon Pendry | |
4 | * All rights reserved. | |
5 | * | |
6 | * This code is derived from software donated to Berkeley by | |
7 | * Jan-Simon Pendry. | |
8 | * | |
9 | * %sccs.include.redist.c% | |
10 | * | |
7e77633b | 11 | * @(#)portald.h 5.1 (Berkeley) %G% |
6b5d96c8 JSP |
12 | * |
13 | * $Id: portald.h,v 1.1 1992/05/25 21:43:09 jsp Exp jsp $ | |
14 | */ | |
15 | ||
16 | #include <sys/cdefs.h> | |
b5476490 | 17 | #include <miscfs/portal/portal.h> |
6b5d96c8 JSP |
18 | |
19 | /* | |
20 | * Meta-chars in an RE. Paths in the config file containing | |
21 | * any of these characters will be matched using regexec, other | |
22 | * paths will be prefix-matched. | |
23 | */ | |
24 | #define RE_CHARS ".|()[]*+?\\^$" | |
25 | ||
26 | typedef struct qelem qelem; | |
27 | ||
28 | struct qelem { | |
29 | qelem *q_forw; | |
30 | qelem *q_back; | |
31 | }; | |
32 | ||
33 | typedef struct provider provider; | |
34 | struct provider { | |
35 | char *pr_match; | |
36 | int (*pr_func) __P((struct portal_cred *, | |
37 | char *key, char **v, int so, int *fdp)); | |
38 | }; | |
39 | extern provider providers[]; | |
40 | ||
41 | /* | |
42 | * Portal providers | |
43 | */ | |
44 | extern int portal_exec __P((struct portal_cred *, | |
45 | char *key, char **v, int so, int *fdp)); | |
46 | extern int portal_file __P((struct portal_cred *, | |
47 | char *key, char **v, int so, int *fdp)); | |
48 | extern int portal_tcp __P((struct portal_cred *, | |
49 | char *key, char **v, int so, int *fdp)); | |
50 | ||
51 | /* | |
52 | * Global functions | |
53 | */ | |
54 | extern void activate __P((qelem *q, int so)); | |
55 | extern char **conf_match __P((qelem *q, char *key)); | |
56 | extern void conf_read __P((qelem *q, char *conf)); |