"Fossies" - the Fresh Open Source Software Archive

Member "cvs-1.11.23/src/version.c" (4 Sep 2005, 1977 Bytes) of package /linux/misc/old/cvs-1.11.23.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "version.c" see the Fossies "Dox" file reference documentation.

    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) 1994 david d `zoo' zuhn
    8  * Portions Copyright (C) 1992, Brian Berliner and Jeff Polk
    9  * Portions Copyright (C) 1989-1992, Brian Berliner
   10  * 
   11  * You may distribute under the terms of the GNU General Public License as
   12  * specified in the README file that comes with this  CVS source distribution.
   13  * 
   14  * version.c - the CVS version number
   15  */
   16 
   17 #include "cvs.h"
   18 
   19 #ifdef CLIENT_SUPPORT
   20 #ifdef SERVER_SUPPORT
   21 char *config_string = " (client/server)\n";
   22 #else
   23 char *config_string = " (client)\n";
   24 #endif
   25 #else
   26 #ifdef SERVER_SUPPORT
   27 char *config_string = " (server)\n";
   28 #else
   29 char *config_string = "\n";
   30 #endif
   31 #endif
   32 
   33 
   34 
   35 static const char *const version_usage[] =
   36 {
   37     "Usage: %s %s\n",
   38     NULL
   39 };
   40 
   41 
   42 
   43 /*
   44  * Output a version string for the client and server.
   45  *
   46  * This function will output the simple version number (for the '--version'
   47  * option) or the version numbers of the client and server (using the 'version'
   48  * command).
   49  */
   50 int
   51 version (argc, argv)
   52     int argc;
   53     char **argv;
   54 {
   55     int err = 0;
   56 
   57     if (argc == -1)
   58     usage (version_usage);
   59 
   60     if (current_parsed_root && current_parsed_root->isremote)
   61         (void) fputs ("Client: ", stdout);
   62 
   63     /* Having the year here is a good idea, so people have
   64        some idea of how long ago their version of CVS was
   65        released.  */
   66     (void) fputs (PACKAGE_STRING, stdout);
   67     (void) fputs (config_string, stdout);
   68 
   69 #ifdef CLIENT_SUPPORT
   70     if (current_parsed_root && current_parsed_root->isremote)
   71     {
   72     (void) fputs ("Server: ", stdout);
   73     start_server ();
   74     if (supported_request ("version"))
   75         send_to_server ("version\012", 0);
   76     else
   77     {
   78         send_to_server ("noop\012", 0);
   79         fputs ("(unknown)\n", stdout);
   80     }
   81     err = get_responses_and_close ();
   82     }
   83 #endif
   84     return err;
   85 }
   86