1 /* 2 * Copyright (C) 1986-2005 The Free Software Foundation, Inc. 3 * 4 * Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>, 5 * and others. 6 * 7 * Portions Copyright (C) 1992, Brian Berliner and Jeff Polk 8 * Portions Copyright (C) 1989-1992, Brian Berliner 9 * 10 * You may distribute under the terms of the GNU General Public License as 11 * specified in the README file that comes with the CVS kit. 12 */ 13 14 /* CVSroot data structures */ 15 16 /* Access method specified in CVSroot. */ 17 typedef enum { 18 null_method, 19 local_method, 20 server_method, 21 pserver_method, 22 kserver_method, 23 gserver_method, 24 ext_method, 25 extssh_method, 26 fork_method 27 } CVSmethod; 28 extern const char method_names[][16]; /* change this in root.c if you change 29 the enum above */ 30 31 typedef struct cvsroot_s { 32 char *original; /* The complete source CVSroot string. */ 33 CVSmethod method; /* One of the enum values above. */ 34 char *directory; /* The directory name. */ 35 unsigned char isremote; /* Nonzero if we are doing remote access. */ 36 #ifdef CLIENT_SUPPORT 37 char *username; /* The username or NULL if method == local. */ 38 char *password; /* The password or NULL if method == local. */ 39 char *hostname; /* The hostname or NULL if method == local. */ 40 int port; /* The port or zero if method == local. */ 41 char *proxy_hostname; /* The hostname of the proxy server, or NULL 42 * when method == local or no proxy will be 43 * used. 44 */ 45 int proxy_port; /* The port of the proxy or zero, as above. */ 46 #endif /* CLIENT_SUPPORT */ 47 } cvsroot_t; 48 49 cvsroot_t *Name_Root PROTO((const char *dir, const char *update_dir)); 50 void free_cvsroot_t PROTO((cvsroot_t *root_in)); 51 cvsroot_t *parse_cvsroot PROTO((const char *root)); 52 cvsroot_t *local_cvsroot PROTO((const char *dir)); 53 void Create_Root PROTO((const char *dir, const char *rootdir)); 54 void root_allow_add PROTO ((char *)); 55 void root_allow_free PROTO ((void)); 56 int root_allow_ok PROTO ((char *)); 57 int root_allow_used PROTO ((void)); 58