This is rcvs.h in view mode; [Download] [Up]
#include <grp.h>
#define CVSUSER_ENV "CVSUSER" /* user's login name, optional */
#define CVSDOMAIN_ENV "CVSDOMAIN" /* network domain, optional */
#define CVSMODE_ENV "CVSMODE" /* local or remote mode */
#define CVSROOTr_ENV "CVSROOTr" /* CVSROOTr variable */
#define CVSREC_ENV "CVSREC" /* CVSREC variable */
#define RCVSADM_REMOTE "CVS/Remote" /* file to memorize repository */
#define RCVS_CLONE ".clone" /* label for clone directory */
#define RCVSLOCK "#rcvs.lock" /* prefix of all lock files */
#define RCVSLOCK_WFL "#rcvs.lock" /* write lock by remote CVS */
#define RCVSLOCK_RFL "#rcvs.lockr" /* read lock by remote CVS */
#define RCVSLOCK_wfl "#rcvs.lockX" /* write lock by local CVS */
#define RCVSLOCK_rfl "#rcvs.lockXr" /* read lock by local CVS */
#define RCVSMOD "$_" /* module prefix in CVS/Remote */
#define RCVSTMP "/tmp/RCVS" /* RCVS temporary directory*/
#define RCVSMSG "/tmp/rcvs.msg"/* msg from in-shell CVS*/
#define CVSROOTADM_COMMITLOG "commitlog" /* commitlog file */
#define CVSROOTADM_HISTORY_NEW "history.tmp" /* new history */
#define CVSROOTADM_COMMITLOG_NEW "commitlog.tmp" /* new commitinfo */
#define MAXARG 200 /* Maximum number of argument */
/* commands */
struct CMD
{
char *fullname;
char *sync_name;
char *msg;
int (*func) ();
char *phases;
int need_repos;
int add_hist;
};
/* who's who variables */
extern char *RCVSdir;
extern char *RCVShost;
extern char *RCVSroot;
extern char *RCVSuser;
extern char *CVSroot_v; /* $CVSROOT */
extern char *CVSroot_n;
extern char *CVSrootr_v; /* $CVSROOTr */
extern char *CVSrootr_n;
extern char *CVSrootd_v; /* -d */
extern char *CVSrootd_n;
extern char *rcvs_ID; /* CVSROOT of choice */
extern char *rcvs_Id;
extern char *rcvs_cvsrec; /* account which receives rdist in phase 1*/
extern char *rcvs_domain; /* network domain */
extern char *rcvs_username; /* value of $CVSUSER */
extern char *rcvs_msgfile; /* file for msg returned by in-shell CVS */
extern char *rcvs_tmpname; /* temporary directory in /tmp/RCVS */
extern FILE *msgfp;
extern List *rcvs_chmodlist; /* list of directory to be chmod */
extern List *rcvs_rmlist; /* list of files to be removed */
extern List *rcvs_dirlist; /* list of directory to be sent by rdist */
extern List *rcvs_filelist; /* list of files to be sent by rdist */
extern struct CMD *rcvs_CM; /* RCVS command */
extern char *version_rcvs; /* RCVS version number in char string */
extern int ver_rcvs; /* RCVS version number in integer */
extern int ver_rcvs_server; /* RCVS server version number in integer */
extern int ver_rcvs_client; /* RCVS client version number in integer */
/* flow control variables */
extern int rcvs_inshell; /* execute CVS in shell, RCVS phase 2 */
extern int rcvs_native; /* native mode, CVS or RCVS */
extern int rcvs_native_CVS; /* native CVS, no remote folder involved */
extern int rcvs_native_RCVS; /* native RCVS, has remote folder involved*/
extern int rcvs_set_p3_lock; /* set phase 3 lock on server */
extern int rcvs_sync;
extern int rcvs_sync_backward;
extern int rcvs_sync_forward;
extern int rcvs_sync_check_error;
extern int rcvs_copt_change_repos; /* -c option, change local repository */
extern int rcvs_Copt_change_repos; /* -C option, change remote repository*/
extern int rcvs_Ropt_remote; /* -R option, checkout from remote root */
/* lock variables */
extern int rcvs_lock_WFL_local; /* rCVS write lock is set on clone */
extern int rcvs_lock_WFL_remote; /* rCVS write lock is set on server */
extern int rcvs_lock_RFL; /* rCVS read lock is set on clone */
extern int rcvs_lock_wfl; /* CVS write lock is set on server */
extern int rcvs_lock_rfl; /* CVS read lock is set on server */
extern int rcvs_Lopt_lock; /* -L option, set RCVS lock */
extern int rcvs_Uopt_unlock; /* -U option, clear RCVS lock */
extern int rcvs_lock_phase3; /* phase 3 problem, keep the lock */
extern char *rcvs_Popt_phases; /* -P, combination of [1-3] phases */
extern int rcvs_file_mode; /* file mode for sync */
extern char *rcvs_module; /* name of module defined in modules */
extern char *rcvs_dopt_where; /* folder specified with -d */
extern int rcvs_level; /* level of sub-directory in a module */
extern int rcvs_cmd_optind; /* # of command options */
extern int rcvs_gen_optind; /* # of CVS general options */
extern int rcvs_parse_opt; /* parse command-line options */
extern int rcvs_do_rdist; /* need to call rdist for sync step */
/* Externs that are included directly in the CVS sources */
#if __STDC__
int rcvs_Add_chmodlist (List **mlist, char *repository, char *update_dir,
char *realdir);
int rcvs_addlist (List **listp, char *lkey, char *pkey, char *pdata);
int rcvs_add_onedir (int argc, char *argv[], Node *p);
int rcvs_Add_Dirlist (List **mlist, char *prepath, char *realdir);
int rcvs_Add_filelist (List **mlist, char *dir, char *filename);
int rcvs_Cleanup();
int rcvs_create_adm (char *dir, char *repository);
int rcvs_dump_list (char *msg, List *mlist);
int rcvs_GetAttr (Node *p);
char *rcvs_gethostdomain ();
char *rcvs_Get_ID (char *dir, char **Repos);
int rcvs_hist_and_lock (int err, char* cvsroot, char* rcvsuser,
char *rcvshost, char *rcvsroot, char *rcvsdir);
int rcvs_Print_Mod (Node *p);
int rcvs_Print_Node (Node *p);
int rcvs_Rdist ();
int rcvs_Rdist_Init ();
int rcvs_walklist (int argc, char *argv[], char *msg, List *list,
int (*proc) ());
#else
int rcvs_Add_chmodlist ();
int rcvs_addlist ();
int rcvs_add_onedir ();
int rcvs_Add_Dirlist ();
int rcvs_Add_filelist ();
int rcvs_Cleanup ();
int rcvs_create_adm ();
int rcvs_dump_list ();
int rcvs_GetAttr ();
char *rcvs_gethostdomain ();
char *rcvs_Get_ID ();
int rcvs_hist_and_lock ();
int rcvs_Print_Mod ();
int rcvs_Print_Node ();
int rcvs_Rdist ();
int rcvs_Rdist_Init ();
int rcvs_walklist ();
#endif /*__STDC__ */
/* code for HP and SGI */
/*+IS*/
#ifdef __hpux
static char *rshcmd = "remsh";
#else
#ifdef __sgi
static char *rshcmd = "/usr/bsd/rsh";
#else
static char *rshcmd = "rsh";
#endif /* __sgi */
#endif /* __hpux */
/*-IS*/
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.