OpenPKG CVS Repository
  http://cvs.openpkg.org/
  ____________________________________________________________________________

  Server: cvs.openpkg.org                  Name:   Ralf S. Engelschall
  Root:   /e/openpkg/cvs                   Email:  [EMAIL PROTECTED]
  Module: openpkg-src                      Date:   13-Feb-2005 14:15:43
  Branch: HEAD                             Handle: 2005021313154201

  Modified files:
    openpkg-src/cvs         cvs.patch.rse cvs.spec

  Log:
    add global --chroot option for allowing 'cvs server' to chroot(2) to a
    directory before giving up privileges

  Summary:
    Revision    Changes     Path
    1.14        +118 -74    openpkg-src/cvs/cvs.patch.rse
    1.95        +1  -1      openpkg-src/cvs/cvs.spec
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-src/cvs/cvs.patch.rse
  ============================================================================
  $ cvs diff -u -r1.13 -r1.14 cvs.patch.rse
  --- openpkg-src/cvs/cvs.patch.rse     9 Jun 2004 20:57:01 -0000       1.13
  +++ openpkg-src/cvs/cvs.patch.rse     13 Feb 2005 13:15:42 -0000      1.14
  @@ -3,8 +3,8 @@
   RCS file: src/README.RSE
   diff -N src/README.RSE
   --- /dev/null        1 Jan 1970 00:00:00 -0000
  -+++ src/README.RSE   19 May 2004 18:54:35 -0000
  -@@ -0,0 +1,310 @@
  ++++ src/README.RSE   13 Feb 2005 11:11:37 -0000
  +@@ -0,0 +1,315 @@
   +
   +  CVS RSE Patches
   +  ===============
  @@ -284,6 +284,11 @@
   +    the host.
   +    [Origin: Ralf S. Engelschall]
   +
  ++  RSE_PATCH_CHROOT
  ++    This adds a global --chroot=/path option which allows one to
  ++    chroot(2) to a particular directory before operating.
  ++    [Origin: Ralf S. Engelschall]
  ++
   +  RSE_PATCH_HASHFUNC:
   +    This replaces the obscure hash function in src/hash.c with 
D.J.Berstein's
   +    popular "times 33" function which is faster to compute and still
  @@ -317,7 +322,7 @@
   +
   Index: src/add.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/add.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/add.c,v
   retrieving revision 1.1.1.12
   diff -u -d -r1.1.1.12 add.c
   --- src/add.c        8 May 2004 23:13:10 -0000       1.1.1.12
  @@ -334,7 +339,7 @@
        Update_Logfile (rcsdir, message, (FILE *) NULL, ulist);
   Index: src/admin.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/admin.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/admin.c,v
   retrieving revision 1.1.1.13
   diff -u -d -r1.1.1.13 admin.c
   --- src/admin.c      22 Mar 2004 17:26:42 -0000      1.1.1.13
  @@ -523,7 +528,7 @@
             NULL, &admin_data,
   Index: src/checkin.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/checkin.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/checkin.c,v
   retrieving revision 1.1.1.5
   diff -u -d -r1.1.1.5 checkin.c
   --- src/checkin.c    11 May 2004 18:22:29 -0000      1.1.1.5
  @@ -574,7 +579,7 @@
                    error (0, errno, "cannot remove %s", tocvsPath);
   Index: src/client.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/client.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/client.c,v
   retrieving revision 1.1.1.16
   diff -u -d -r1.1.1.16 client.c
   --- src/client.c     19 May 2004 21:39:47 -0000      1.1.1.16
  @@ -636,7 +641,7 @@
        {
   Index: src/commit.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/commit.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/commit.c,v
   retrieving revision 1.1.1.17
   diff -u -d -r1.1.1.17 commit.c
   --- src/commit.c     9 Jun 2004 14:52:37 -0000       1.1.1.17
  @@ -681,7 +686,7 @@
    
   Index: src/create_adm.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/create_adm.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/create_adm.c,v
   retrieving revision 1.1.1.9
   diff -u -d -r1.1.1.9 create_adm.c
   --- src/create_adm.c 27 Apr 2004 20:36:33 -0000      1.1.1.9
  @@ -751,12 +756,12 @@
        free (reposcopy);
   Index: src/cvs.h
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/cvs.h,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/cvs.h,v
   retrieving revision 1.1.1.16
   diff -u -d -r1.1.1.16 cvs.h
   --- src/cvs.h        9 Jun 2004 14:52:38 -0000       1.1.1.16
  -+++ src/cvs.h        9 Jun 2004 20:51:01 -0000
  -@@ -7,6 +7,45 @@
  ++++ src/cvs.h        13 Feb 2005 11:11:02 -0000
  +@@ -7,6 +7,46 @@
     */
    
    /*
  @@ -784,6 +789,7 @@
   +#define RSE_PATCH_SETXID
   +#define RSE_PATCH_PSERVERD
   +#define RSE_PATCH_MAPROOT
  ++#define RSE_PATCH_CHROOT
   +#define RSE_PATCH_RLIST
   +#define RSE_PATCH_COSMETICS
   +#define RSE_PATCH_HASHFUNC
  @@ -802,7 +808,7 @@
     * basic information used in all source files
     *
     */
  -@@ -166,6 +205,33 @@
  +@@ -166,6 +206,33 @@
    #define CVSROOTADM_WRITERS  "writers"
    #define CVSROOTADM_PASSWD   "passwd"
    #define CVSROOTADM_CONFIG   "config"
  @@ -836,7 +842,7 @@
    
    #define CVSNULLREPOS                "Emptydir"      /* an empty directory */
    
  -@@ -449,6 +515,27 @@
  +@@ -449,6 +516,27 @@
    void root_allow_free (void);
    int root_allow_ok (char *);
    
  @@ -864,7 +870,7 @@
    char *previous_rev (RCSNode *rcs, const char *rev);
    char *gca (const char *rev1, const char *rev2);
    void check_numeric (const char *, int, char **);
  -@@ -612,6 +699,10 @@
  +@@ -612,6 +700,10 @@
    void expand_wild (int argc, char **argv, 
                      int *pargc, char ***pargv);
    
  @@ -875,7 +881,7 @@
    #ifdef SERVER_SUPPORT
    int cvs_casecmp (const char *, const char *);
    #endif
  -@@ -860,6 +951,9 @@
  +@@ -860,6 +952,9 @@
                                   NULL for add or import */
      char *rev_new;            /* rev number after a commit/modify,
                                   add, or import, NULL for remove */
  @@ -885,7 +891,7 @@
    };
    
    /* Wrappers.  */
  -@@ -900,6 +994,13 @@
  +@@ -900,6 +995,13 @@
    int unedit (int argc, char **argv);
    int editors (int argc, char **argv);
    int watchers (int argc, char **argv);
  @@ -899,7 +905,7 @@
    int annotate (int argc, char **argv);
    int add (int argc, char **argv);
    int admin (int argc, char **argv);
  -@@ -929,8 +1030,11 @@
  +@@ -929,8 +1031,11 @@
    int cvsstatus (int argc, char **argv);
    int cvstag (int argc, char **argv);
    int version (int argc, char **argv);
  @@ -914,7 +920,7 @@
    char *scramble (char *str);
   Index: src/cvsrc.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/cvsrc.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/cvsrc.c,v
   retrieving revision 1.1.1.5
   diff -u -d -r1.1.1.5 cvsrc.c
   --- src/cvsrc.c      5 Apr 2004 15:36:09 -0000       1.1.1.5
  @@ -1219,7 +1225,7 @@
          
   Index: src/diff.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/diff.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/diff.c,v
   retrieving revision 1.1.1.11
   diff -u -d -r1.1.1.11 diff.c
   --- src/diff.c       22 Mar 2004 17:26:44 -0000      1.1.1.11
  @@ -1397,7 +1403,7 @@
        {
   Index: src/hash.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/hash.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/hash.c,v
   retrieving revision 1.1.1.7
   diff -u -d -r1.1.1.7 hash.c
   --- src/hash.c       27 Apr 2004 20:44:36 -0000      1.1.1.7
  @@ -1430,7 +1436,7 @@
        return h % HASHSIZE;
   Index: src/history.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/history.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/history.c,v
   retrieving revision 1.1.1.11
   diff -u -d -r1.1.1.11 history.c
   --- src/history.c    9 Jun 2004 14:52:38 -0000       1.1.1.11
  @@ -1477,7 +1483,7 @@
        /* FIXME:  This should check for write permissions instead.  This way,
   Index: src/import.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/import.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/import.c,v
   retrieving revision 1.1.1.10
   diff -u -d -r1.1.1.10 import.c
   --- src/import.c     30 Apr 2004 12:57:34 -0000      1.1.1.10
  @@ -1974,7 +1980,7 @@
   +
   Index: src/logmsg.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/logmsg.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/logmsg.c,v
   retrieving revision 1.1.1.10
   diff -u -d -r1.1.1.10 logmsg.c
   --- src/logmsg.c     22 Mar 2004 17:26:46 -0000      1.1.1.10
  @@ -2029,12 +2035,23 @@
                break;
   Index: src/main.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/main.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/main.c,v
   retrieving revision 1.1.1.15
   diff -u -d -r1.1.1.15 main.c
   --- src/main.c       29 May 2004 04:49:51 -0000      1.1.1.15
  -+++ src/main.c       9 Jun 2004 20:51:02 -0000
  -@@ -54,6 +54,11 @@
  ++++ src/main.c       13 Feb 2005 12:32:12 -0000
  +@@ -25,6 +25,10 @@
  + const char *program_path;
  + const char *cvs_cmd_name;
  + 
  ++#ifdef RSE_PATCH_CHROOT
  ++static char *chrootdir = NULL;
  ++#endif
  ++
  + /* I'd dynamically allocate this, but it seems like gethostname
  +    requires a fixed size array.  If I'm remembering the RFCs right,
  +    256 should be enough.  */
  +@@ -54,6 +58,11 @@
    
    mode_t cvsumask = UMASK_DFLT;
    
  @@ -2046,7 +2063,7 @@
    char *CurDir;
    
    /*
  -@@ -128,12 +133,18 @@
  +@@ -128,12 +137,18 @@
        { "login",    "logon",    "lgn",       login,     0 },
        { "logout",   NULL,       NULL,        logout,    0 },
    #endif /* AUTH_CLIENT_SUPPORT */
  @@ -2065,7 +2082,7 @@
        { "release",  "re",       "rel",       release,   0 },
        { "remove",   "rm",       "delete",    cvsremove, 
CVS_CMD_MODIFIES_REPOSITORY | CVS_CMD_USES_WORK_DIR },
        { "rlog",     "rl",       NULL,        cvslog,    0 },
  -@@ -149,9 +160,53 @@
  +@@ -149,9 +164,53 @@
        { "version",  "ve",       "ver",       version,   0 },
        { "watch",    NULL,       NULL,        watch,     
CVS_CMD_MODIFIES_REPOSITORY | CVS_CMD_USES_WORK_DIR },
        { "watchers", NULL,       NULL,        watchers,  CVS_CMD_USES_WORK_DIR 
},
  @@ -2119,7 +2136,7 @@
    static const char *const usg[] =
    {
        /* CVS usage messages never have followed the GNU convention of
  -@@ -192,9 +247,13 @@
  +@@ -192,9 +251,13 @@
           paragraph in ../cvs.spec without assuming the reader knows what
           version control means.  */
    
  @@ -2133,7 +2150,7 @@
        NULL,
    };
    
  -@@ -221,12 +280,18 @@
  +@@ -221,12 +284,18 @@
        "        login        Prompt for password for authenticating server\n",
        "        logout       Removes entry in .cvspass for remote 
repository\n",
    #endif /* AUTH_CLIENT_SUPPORT */
  @@ -2152,7 +2169,7 @@
        "        release      Indicate that a Module is no longer in use\n",
        "        remove       Remove an entry from the repository\n",
        "        rlog         Print out history information for a module\n",
  -@@ -242,6 +307,9 @@
  +@@ -242,6 +311,9 @@
        "        version      Show current CVS version(s)\n",
        "        watch        Set watches\n",
        "        watchers     See who is watching a file\n",
  @@ -2162,7 +2179,7 @@
        "(Specify the --help option for a list of other help options)\n",
        NULL,
    };
  -@@ -271,6 +339,10 @@
  +@@ -271,6 +343,10 @@
    #endif
        "    -a           Authenticate all net traffic.\n",
    #endif
  @@ -2173,7 +2190,7 @@
        "    -s VAR=VAL   Set CVS user variable.\n",
        "(Specify the --help option for a list of other help options)\n",
        NULL
  -@@ -329,7 +401,7 @@
  +@@ -329,7 +405,7 @@
    
    
    unsigned long int
  @@ -2182,7 +2199,7 @@
    {
        const struct cmd *cm;
    
  -@@ -338,6 +410,20 @@
  +@@ -338,6 +414,20 @@
        if (strcmp (cmd_name, cm->fullname) == 0)
            break;
        }
  @@ -2203,7 +2220,7 @@
        if (!cm->fullname)
        error (1, 0, "unknown command: %s", cmd_name);
        return cm->attr;
  -@@ -426,11 +512,30 @@
  +@@ -426,11 +516,30 @@
        int free_CVSroot = 0;
        int free_Editor = 0;
        int free_Tmpdir = 0;
  @@ -2234,17 +2251,20 @@
        static struct option long_options[] =
        {
            {"help", 0, NULL, 'H'},
  -@@ -439,6 +544,9 @@
  +@@ -439,6 +548,12 @@
        {"help-synonyms", 0, NULL, 2},
        {"help-options", 0, NULL, 4},
        {"allow-root", required_argument, NULL, 3},
   +#ifdef RSE_PATCH_MAPROOT
   +    {"map-root", required_argument, NULL, 5},
   +#endif
  ++#ifdef RSE_PATCH_CHROOT
  ++    {"chroot", required_argument, NULL, 6},
  ++#endif
            {0, 0, 0, 0}
        };
        /* `getopt_long' stores the option index here, but right now we
  -@@ -503,6 +611,10 @@
  +@@ -503,6 +618,10 @@
        readonlyfs = 1;
        logoff = 1;
        }
  @@ -2255,7 +2275,7 @@
    
        /* Set this to 0 to force getopt initialization.  getopt() sets
           this to 1 internally.  */
  -@@ -522,12 +634,63 @@
  +@@ -522,12 +641,63 @@
            use_cvsrc = 0;
        }
    
  @@ -2319,7 +2339,7 @@
        optind = 0;
        opterr = 1;
    
  -@@ -553,6 +716,17 @@
  +@@ -553,6 +723,24 @@
                /* --allow-root */
                root_allow_add (optarg);
                break;
  @@ -2334,10 +2354,17 @@
   +            break;
   +            }
   +#endif
  ++#ifdef RSE_PATCH_CHROOT
  ++        case 6: {
  ++            /* --chroot */
  ++            chrootdir = strdup(optarg);
  ++            break;
  ++            }
  ++#endif
            case 'Q':
                really_quiet = 1;
                /* FALL THROUGH */
  -@@ -612,10 +786,34 @@
  +@@ -612,10 +800,34 @@
            case 'd':
                if (CVSroot_cmdline != NULL)
                    free (CVSroot_cmdline);
  @@ -2372,7 +2399,7 @@
                    free_CVSroot = 0;
                }
                CVSroot = CVSroot_cmdline;
  -@@ -664,6 +862,28 @@
  +@@ -664,6 +876,28 @@
                       We will issue an error later if stream
                       authentication is not supported.  */
                break;
  @@ -2401,7 +2428,7 @@
            case '?':
            default:
                    usage (usg);
  -@@ -681,6 +901,28 @@
  +@@ -681,6 +915,28 @@
    Using this option to access a repository which some users write to may\n\
    cause intermittent sandbox corruption.");
        }
  @@ -2430,7 +2457,7 @@
    
        /* Look up the command name. */
    
  -@@ -703,6 +945,10 @@
  +@@ -703,6 +959,10 @@
        else
        cvs_cmd_name = cm->fullname;    /* Global pointer for later use */
    
  @@ -2441,7 +2468,7 @@
        if (help)
        {
        argc = -1;              /* some functions only check for this */
  -@@ -730,6 +976,80 @@
  +@@ -730,6 +990,97 @@
                       CVSUMASK_ENV, cp);
        }
    
  @@ -2462,12 +2489,33 @@
   +        && strcmp(cvs_cmd_name, "server")  == 0) {
   +        uid_t uid, euid;
   +        gid_t gid, egid;
  -+        struct passwd *pw;
  ++        struct passwd *pw1;
  ++        struct passwd *pw2;
   +        char *env;
   +
  -+        /* adjust group id */
  ++        /* fetch [e]uid/[e]gid (before chroot(2) call below!) */
   +        gid  = getgid();
  ++        uid  = getuid();
   +        egid = getegid();
  ++        euid = geteuid();
  ++
  ++        /* fetch passwd informations */
  ++        pw1 = getpwuid(uid);
  ++        pw2 = getpwuid(euid != uid ? euid : uid);
  ++
  ++        /* optionally change to a different root directory */
  ++#ifdef RSE_PATCH_CHROOT
  ++        if (chrootdir != NULL) {
  ++            if (euid != 0 && uid != 0)
  ++                error(1, 0, "cannot chroot(2) because requires root 
permissions");
  ++            if (chdir(chrootdir) == -1)
  ++                error(1, errno, "cannot chdir(2)");
  ++            if (chroot(chrootdir) == -1)
  ++                error(1, errno, "cannot chroot(2)");
  ++        }
  ++#endif
  ++
  ++        /* adjust group id */
   +        if (gid != egid)
   +            setgid(egid); /* upgrade real to effective gid */
   +#if !defined(__hpux)
  @@ -2476,8 +2524,6 @@
   +#endif
   +
   +        /* adjust user id */
  -+        uid  = getuid();
  -+        euid = geteuid();
   +        if (uid != euid)
   +            setuid(euid); /* upgrade real to effective uid */
   +#if !defined(__hpux)
  @@ -2489,9 +2535,8 @@
   +        umask(0);
   +
   +        /* remember real user (especially for getcaller()) */
  -+        pw = getpwuid(uid);
   +#ifdef AUTH_SERVER_SUPPORT
  -+        CVS_Username = xstrdup(pw->pw_name);
  ++        CVS_Username = xstrdup(pw1->pw_name);
   +#if HAVE_PUTENV
   +        env = xmalloc(sizeof("LOGNAME=")+strlen(CVS_Username));
   +        (void)sprintf(env, "LOGNAME=%s", CVS_Username);
  @@ -2501,9 +2546,8 @@
   +
   +#if HAVE_PUTENV
   +        /* remember running user */
  -+        pw = getpwuid(getuid());
  -+        env = xmalloc(sizeof("USER=")+strlen(pw->pw_name));
  -+        (void)sprintf(env, "USER=%s", pw->pw_name);
  ++        env = xmalloc(sizeof("USER=")+strlen(pw2->pw_name));
  ++        (void)sprintf(env, "USER=%s", pw2->pw_name);
   +        (void)putenv(env);
   +#endif
   +    }
  @@ -2522,7 +2566,7 @@
    #ifdef SERVER_SUPPORT
    
    # ifdef HAVE_KERBEROS
  -@@ -746,6 +1066,21 @@
  +@@ -746,6 +1097,21 @@
        }
    # endif /* HAVE_KERBEROS */
    
  @@ -2544,7 +2588,7 @@
    
    # if defined (AUTH_SERVER_SUPPORT) || defined (HAVE_GSSAPI)
        if (strcmp (cvs_cmd_name, "pserver") == 0)
  -@@ -770,6 +1105,10 @@
  +@@ -770,6 +1136,10 @@
    
    #endif /* SERVER_SUPPORT */
    
  @@ -2555,7 +2599,7 @@
    
    #ifdef SERVER_SUPPORT
        if (server_active)
  -@@ -832,8 +1171,12 @@
  +@@ -832,8 +1202,12 @@
               in server mode, since the client will send the repository
               directory after the connection is made. */
    
  @@ -2568,7 +2612,7 @@
        {
            char *CVSADM_Root;
            
  -@@ -889,6 +1232,54 @@
  +@@ -889,6 +1263,54 @@
                error (1, 0,
                       "CVS/Root file (if any).");
            }
  @@ -2623,7 +2667,7 @@
        }
    
        /* Here begins the big loop over unique cvsroot values.  We
  -@@ -921,6 +1312,9 @@
  +@@ -921,6 +1343,9 @@
           end of things.  */
    
        while (
  @@ -2633,7 +2677,7 @@
    #ifdef SERVER_SUPPORT
               server_active ||
    #endif
  -@@ -932,8 +1326,12 @@
  +@@ -932,8 +1357,12 @@
               in server mode, since the client will send the repository
               directory after the connection is made. */
    
  @@ -2646,7 +2690,7 @@
            {
                /* Now we're 100% sure that we have a valid CVSROOT
                   variable.  Parse it to see if we're supposed to do
  -@@ -966,7 +1364,12 @@
  +@@ -966,7 +1395,12 @@
                    {
                        save_errno = errno;
                        /* If this is "cvs init", the root need not exist yet.  
*/
  @@ -2659,7 +2703,7 @@
                        {
                            error (1, save_errno, "%s", path);
                        }
  -@@ -1002,6 +1405,9 @@
  +@@ -1002,6 +1436,9 @@
               read_cvsrc and other such places or vice versa.  That sort
               of thing probably needs more thought.  */
            if (1
  @@ -2669,7 +2713,7 @@
    #ifdef SERVER_SUPPORT
                && !server_active
    #endif
  -@@ -1032,7 +1438,31 @@
  +@@ -1032,7 +1469,31 @@
            }
    #endif
    
  @@ -2701,7 +2745,7 @@
    #ifdef SERVER_SUPPORT
                /* Don't worry about lock_cleanup_setup when the server is
                 * active since we can only go through this loop once in that
  -@@ -1044,6 +1474,9 @@
  +@@ -1044,6 +1505,9 @@
                !current_parsed_root->isremote &&
    #endif
                !lock_cleanup_setup)
  @@ -2711,7 +2755,7 @@
            {
                /* Set up to clean up any locks we might create on exit.  */
                cleanup_register (Lock_Cleanup);
  -@@ -1052,6 +1485,27 @@
  +@@ -1052,6 +1516,27 @@
    
            /* Call our worker function.  */
            err = (*(cm->func)) (argc, argv);
  @@ -2739,7 +2783,7 @@
        
            /* Mark this root directory as done.  When the server is
                   active, current_root will be NULL -- don't try and
  -@@ -1070,12 +1524,21 @@
  +@@ -1070,12 +1555,21 @@
            dellist (&root_directories);
    #endif
    
  @@ -2763,7 +2807,7 @@
        if (free_CVSroot)
   Index: src/mkmodules.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/mkmodules.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/mkmodules.c,v
   retrieving revision 1.1.1.8
   diff -u -d -r1.1.1.8 mkmodules.c
   --- src/mkmodules.c  18 Feb 2004 19:24:19 -0000      1.1.1.8
  @@ -2854,7 +2898,7 @@
        NULL},
   Index: src/parseinfo.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/parseinfo.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/parseinfo.c,v
   retrieving revision 1.1.1.11
   diff -u -d -r1.1.1.11 parseinfo.c
   --- src/parseinfo.c  22 Mar 2004 17:26:47 -0000      1.1.1.11
  @@ -2928,7 +2972,7 @@
        if (ferror (fp_info))
   Index: src/repos.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/repos.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/repos.c,v
   retrieving revision 1.1.1.9
   diff -u -d -r1.1.1.9 repos.c
   --- src/repos.c      30 Apr 2004 12:57:34 -0000      1.1.1.9
  @@ -2947,7 +2991,7 @@
   +
   Index: src/root.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/root.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/root.c,v
   retrieving revision 1.1.1.13
   diff -u -d -r1.1.1.13 root.c
   --- src/root.c       30 Apr 2004 12:57:34 -0000      1.1.1.13
  @@ -3523,7 +3567,7 @@
   +
   Index: src/sanity.sh
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/sanity.sh,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/sanity.sh,v
   retrieving revision 1.1.1.16
   diff -u -d -r1.1.1.16 sanity.sh
   --- src/sanity.sh    9 Jun 2004 14:52:38 -0000       1.1.1.16
  @@ -3589,7 +3633,7 @@
          # HEAD is the head of the trunk
   Index: src/server.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/server.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/server.c,v
   retrieving revision 1.1.1.17
   diff -u -d -r1.1.1.17 server.c
   --- src/server.c     9 Jun 2004 14:52:39 -0000       1.1.1.17
  @@ -4210,7 +4254,7 @@
   +
   Index: src/subr.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/subr.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/subr.c,v
   retrieving revision 1.1.1.14
   diff -u -d -r1.1.1.14 subr.c
   --- src/subr.c       9 Jun 2004 14:52:39 -0000       1.1.1.14
  @@ -4314,7 +4358,7 @@
     * buffer should be at least twice as long as the string.
   Index: src/update.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/update.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/update.c,v
   retrieving revision 1.1.1.14
   diff -u -d -r1.1.1.14 update.c
   --- src/update.c     8 May 2004 23:13:10 -0000       1.1.1.14
  @@ -4356,7 +4400,7 @@
        {
   Index: src/version.c
   ===================================================================
  -RCS file: /e/ossp/pkg/tool/cvs/cvs/cvs/src/version.c,v
  +RCS file: /v/ossp/pkg/tool/cvs/cvs/cvs/src/version.c,v
   retrieving revision 1.1.1.8
   diff -u -d -r1.1.1.8 version.c
   --- src/version.c    23 Jul 2003 20:40:09 -0000      1.1.1.8
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-src/cvs/cvs.spec
  ============================================================================
  $ cvs diff -u -r1.94 -r1.95 cvs.spec
  --- openpkg-src/cvs/cvs.spec  1 Jan 2005 10:48:28 -0000       1.94
  +++ openpkg-src/cvs/cvs.spec  13 Feb 2005 13:15:43 -0000      1.95
  @@ -38,7 +38,7 @@
   Group:        SCM
   License:      GPL
   Version:      %{V_cvs}
  -Release:      20041016
  +Release:      20050213
   
   #   package options
   %option       with_fsl         yes
  @@ .
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
CVS Repository Commit List                     openpkg-cvs@openpkg.org

Reply via email to