Browse Source

upgrade to CVS 1.11.3; upgrade RSE patches for 1.11.3

Ralf S. Engelschall 23 years ago
parent
commit
1ad6b4f46b
3 changed files with 317 additions and 644 deletions
  1. 0 323
      cvs/cvs.patch
  2. 315 315
      cvs/cvs.patches.rse
  3. 2 6
      cvs/cvs.spec

+ 0 - 323
cvs/cvs.patch

@@ -1,323 +0,0 @@
-Index: src/server.c
-===================================================================
-RCS file: /cvs/ccvs/src/server.c,v
-diff -u -d -r1.275 -r1.277
---- src/server.c	18 Jun 2002 13:35:28 -0000	1.275
-+++ src/server.c	14 Aug 2002 13:21:55 -0000	1.277
-@@ -5010,6 +5010,8 @@
-      int argc;
-      char **argv;
- {
-+    char *error_prog_name;		/* Used in error messages */
-+
-     if (argc == -1)
-     {
- 	static const char *const msg[] =
-@@ -5165,39 +5167,18 @@
-     /* Small for testing.  */
-     argument_vector_size = 1;
-     argument_vector =
--	(char **) malloc (argument_vector_size * sizeof (char *));
--    if (argument_vector == NULL)
--    {
--	/*
--	 * Strictly speaking, we're not supposed to output anything
--	 * now.  But we're about to exit(), give it a try.
--	 */
--	printf ("E Fatal server error, aborting.\n\
--error ENOMEM Virtual memory exhausted.\n");
--
--	/* I'm doing this manually rather than via error_exit ()
--	   because I'm not sure whether we want to call server_cleanup.
--	   Needs more investigation....  */
--
--#ifdef SYSTEM_CLEANUP
--	/* Hook for OS-specific behavior, for example socket subsystems on
--	   NT and OS2 or dealing with windows and arguments on Mac.  */
--	SYSTEM_CLEANUP ();
--#endif
--
--	exit (EXIT_FAILURE);
--    }
--
-+	(char **) xmalloc (argument_vector_size * sizeof (char *));
-     argument_count = 1;
-     /* This gets printed if the client supports an option which the
-        server doesn't, causing the server to print a usage message.
--       FIXME: probably should be using program_name here.
-        FIXME: just a nit, I suppose, but the usage message the server
-        prints isn't literally true--it suggests "cvs server" followed
-        by options which are for a particular command.  Might be nice to
-        say something like "client apparently supports an option not supported
-        by this server" or something like that instead of usage message.  */
--    argument_vector[0] = "cvs server";
-+    error_prog_name = xmalloc( strlen(program_name) + 8 );
-+    sprintf(error_prog_name, "%s server", program_name);
-+    argument_vector[0] = error_prog_name;
- 
-     while (1)
-     {
-@@ -5270,6 +5251,7 @@
- 	}
- 	free (orig_cmd);
-     }
-+    free(error_prog_name);
-     server_cleanup (0);
-     return 0;
- }
-@@ -5419,8 +5401,8 @@
-     int found_it = 0;
-     int namelen;
- 
--    /* We don't use current_parsed_root->directory because it hasn't been set yet
--     * -- our `repository' argument came from the authentication
-+    /* We don't use current_parsed_root->directory because it hasn't been
-+     * set yet -- our `repository' argument came from the authentication
-      * protocol, not the regular CVS protocol.
-      */
- 
-@@ -5578,7 +5560,7 @@
-     {
- 	/* No cvs password found, so try /etc/passwd. */
- 
--	const char *found_passwd = NULL;
-+	char *found_passwd = NULL;
- 	struct passwd *pw;
- #ifdef HAVE_GETSPNAM
- 	struct spwd *spw;
-Index: src/server.c
-===================================================================
-RCS file: /cvs/ccvs/src/server.c,v
-diff -u -d -r1.279 -r1.280
---- src/server.c	16 Sep 2002 14:56:25 -0000	1.279
-+++ src/server.c	4 Oct 2002 19:56:01 -0000	1.280
-@@ -3213,10 +3213,13 @@
- 	buf_flush (buf_to_net, 1);
- 	buf_shutdown (protocol_inbuf);
- 	buf_free (protocol_inbuf);
-+	protocol_inbuf = NULL;
- 	buf_shutdown (stderrbuf);
- 	buf_free (stderrbuf);
-+	stderrbuf = NULL;
- 	buf_shutdown (stdoutbuf);
- 	buf_free (stdoutbuf);
-+	stdoutbuf = NULL;
-     }
- 
-     if (errs)
-@@ -4891,9 +4894,9 @@
- 
- 	status = buf_shutdown (buf_from_net);
- 	if (status != 0)
--	{
- 	    error (0, status, "shutting down buffer from client");
--	}
-+	buf_free (buf_from_net);
-+	buf_from_net = NULL;
-     }
- 
-     if (dont_delete_temp)
-@@ -4902,6 +4905,9 @@
- 	{
- 	    (void) buf_flush (buf_to_net, 1);
- 	    (void) buf_shutdown (buf_to_net);
-+	    buf_free (buf_to_net);
-+	    buf_to_net = NULL;
-+	    error_use_protocol = 0;
- 	}
- 	return;
-     }
-@@ -5003,6 +5009,9 @@
-     {
- 	(void) buf_flush (buf_to_net, 1);
- 	(void) buf_shutdown (buf_to_net);
-+	buf_free (buf_to_net);
-+	buf_to_net = NULL;
-+	error_use_protocol = 0;
-     }
- }
- 
-@@ -5146,25 +5155,6 @@
- 	}
-     }
- 
--#ifdef SIGABRT
--    (void) SIG_register (SIGABRT, server_cleanup);
--#endif
--#ifdef SIGHUP
--    (void) SIG_register (SIGHUP, server_cleanup);
--#endif
--#ifdef SIGINT
--    (void) SIG_register (SIGINT, server_cleanup);
--#endif
--#ifdef SIGQUIT
--    (void) SIG_register (SIGQUIT, server_cleanup);
--#endif
--#ifdef SIGPIPE
--    (void) SIG_register (SIGPIPE, server_cleanup);
--#endif
--#ifdef SIGTERM
--    (void) SIG_register (SIGTERM, server_cleanup);
--#endif
--
-     /* Now initialize our argument vector (for arguments from the client).  */
- 
-     /* Small for testing.  */
-@@ -6352,12 +6342,12 @@
-     if (len == 0)
- 	len = strlen (str);
- #ifdef SERVER_SUPPORT
--    if (error_use_protocol)
-+    if (error_use_protocol && buf_to_net != NULL)
-     {
- 	buf_output (saved_output, str, len);
- 	buf_copy_lines (buf_to_net, saved_output, 'M');
-     }
--    else if (server_active)
-+    else if (server_active && protocol != NULL)
-     {
- 	buf_output (saved_output, str, len);
- 	buf_copy_lines (protocol, saved_output, 'M');
-Index: src/server.c
-===================================================================
-RCS file: /cvs/ccvs/src/server.c,v
-diff -u -d -r1.280 -r1.281
---- src/server.c	4 Oct 2002 19:56:01 -0000	1.280
-+++ src/server.c	25 Oct 2002 19:35:07 -0000	1.281
-@@ -710,17 +710,7 @@
- 	       cause deadlock, as noted in server_cleanup.  */
- 	    buf_flush (buf_to_net, 1);
- 
--	    /* I'm doing this manually rather than via error_exit ()
--	       because I'm not sure whether we want to call server_cleanup.
--	       Needs more investigation....  */
--
--#ifdef SYSTEM_CLEANUP
--	    /* Hook for OS-specific behavior, for example socket subsystems on
--	       NT and OS2 or dealing with windows and arguments on Mac.  */
--	    SYSTEM_CLEANUP ();
--#endif
--
--	    exit (EXIT_FAILURE);
-+	    error_exit ();
- 	}
- 	else if (rs->status == rs_optional)
- 	    rs->status = rs_not_supported;
-@@ -5080,18 +5070,7 @@
- 		printf ("E Fatal server error, aborting.\n\
- error ENOMEM Virtual memory exhausted.\n");
- 
--		/* I'm doing this manually rather than via error_exit ()
--		   because I'm not sure whether we want to call server_cleanup.
--		   Needs more investigation....  */
--
--#ifdef SYSTEM_CLEANUP
--		/* Hook for OS-specific behavior, for example socket
--		   subsystems on NT and OS2 or dealing with windows
--		   and arguments on Mac.  */
--		SYSTEM_CLEANUP ();
--#endif
--
--		exit (EXIT_FAILURE);
-+		error_exit ();
- 	    }
- 	    strcpy (server_temp_dir, Tmpdir);
- 
-@@ -5575,17 +5554,7 @@
- 	    printf ("E Fatal error, aborting.\n\
- error 0 %s: no such user\n", username);
- 
--	    /* I'm doing this manually rather than via error_exit ()
--	       because I'm not sure whether we want to call server_cleanup.
--	       Needs more investigation....  */
--
--#ifdef SYSTEM_CLEANUP
--	    /* Hook for OS-specific behavior, for example socket subsystems on
--	       NT and OS2 or dealing with windows and arguments on Mac.  */
--	    SYSTEM_CLEANUP ();
--#endif
--
--	    exit (EXIT_FAILURE);
-+	    error_exit ();
- 	}
- 
- 	/* Allow for dain bramaged HPUX passwd aging
-@@ -5635,16 +5604,7 @@
- 	   outweighs this.  */
- 	printf ("error 0 no such user %s in CVSROOT/passwd\n", username);
- 
--	/* I'm doing this manually rather than via error_exit ()
--	   because I'm not sure whether we want to call server_cleanup.
--	   Needs more investigation....  */
--
--#ifdef SYSTEM_CLEANUP
--	/* Hook for OS-specific behavior, for example socket subsystems on
--	   NT and OS2 or dealing with windows and arguments on Mac.  */
--	SYSTEM_CLEANUP ();
--#endif
--	exit (EXIT_FAILURE);
-+	error_exit ();
-     }
-     else
-     {
-@@ -5901,12 +5861,8 @@
-     {
- 	printf ("E Fatal error, aborting.\n\
- error %s getpeername or getsockname failed\n", strerror (errno));
--#ifdef SYSTEM_CLEANUP
--	/* Hook for OS-specific behavior, for example socket subsystems on
--	   NT and OS2 or dealing with windows and arguments on Mac.  */
--	SYSTEM_CLEANUP ();
--#endif
--	exit (EXIT_FAILURE);
-+
-+	error_exit ();
-     }
- 
- #ifdef SO_KEEPALIVE
-@@ -5932,12 +5888,8 @@
-     {
- 	printf ("E Fatal error, aborting.\n\
- error 0 kerberos: %s\n", krb_get_err_text(status));
--#ifdef SYSTEM_CLEANUP
--	/* Hook for OS-specific behavior, for example socket subsystems on
--	   NT and OS2 or dealing with windows and arguments on Mac.  */
--	SYSTEM_CLEANUP ();
--#endif
--	exit (EXIT_FAILURE);
-+
-+	error_exit ();
-     }
- 
-     memcpy (kblock, auth.session, sizeof (C_Block));
-@@ -5948,12 +5900,8 @@
-     {
- 	printf ("E Fatal error, aborting.\n\
- error 0 kerberos: can't get local name: %s\n", krb_get_err_text(status));
--#ifdef SYSTEM_CLEANUP
--	/* Hook for OS-specific behavior, for example socket subsystems on
--	   NT and OS2 or dealing with windows and arguments on Mac.  */
--	SYSTEM_CLEANUP ();
--#endif
--	exit (EXIT_FAILURE);
-+
-+	error_exit ();
-     }
- 
-     /* Switch to run as this user. */
-Index: src/buffer.c
-===================================================================
-RCS file: /cvs/ccvs/src/buffer.c,v
-diff -u -d -r1.19 -r1.20
---- src/buffer.c	20 May 2002 18:27:55 -0000	1.19
-+++ src/buffer.c	24 Oct 2002 19:54:58 -0000	1.20
-@@ -1392,8 +1392,7 @@
- 
-     if (buf->input)
-     {
--	if (! buf_empty_p (buf)
--	    || getc (bc->fp) != EOF)
-+	if ( !buf_empty_p (buf) )
- 	{
- # ifdef SERVER_SUPPORT
- 	    if (server_active)

File diff suppressed because it is too large
+ 315 - 315
cvs/cvs.patches.rse


+ 2 - 6
cvs/cvs.spec

@@ -24,7 +24,7 @@
 ##
 
 #   the involved versions
-%define       V_cvs       1.11.2
+%define       V_cvs       1.11.3
 %define       V_cvslock   0.2
 
 #   optional support for applying the RSE patches
@@ -45,7 +45,7 @@ Distribution: OpenPKG [BASE]
 Group:        SCM
 License:      GPL
 Version:      %{V_cvs}
-Release:      20021211
+Release:      20021228
 
 #   list of sources
 Source0:      http://www.cvshome.org/files/19/10/cvs-%{V_cvs}.tar.gz
@@ -54,7 +54,6 @@ Source2:      http://www.red-bean.com/cvs2cl/cvs2cl.pl
 Source3:      cvs.patches.rse
 Source4:      cvs.patches.msvb
 Source5:      rc.cvs
-Patch0:       cvs.patch
 
 #   build information
 Prefix:       %{l_prefix}
@@ -95,9 +94,6 @@ AutoReqProv:  no
 %prep
     %setup0 -q -c
     %setup1 -q -T -D -a 1
-    ( cd cvs-%{V_cvs}
-      %patch0 -p0
-    )
 %if "%{with_rse_patches}" == "yes"
     ( cd cvs-%{V_cvs}
       cat %{SOURCE cvs.patches.rse} |\