ben         96/08/19 11:44:17

  Modified:    src       http_main.c
  Log:
  Add directive listing option.
  
  Revision  Changes    Path
  1.61      +22 -2     apache/src/http_main.c
  
  Index: http_main.c
  ===================================================================
  RCS file: /export/home/cvs/apache/src/http_main.c,v
  retrieving revision 1.60
  retrieving revision 1.61
  diff -C3 -r1.60 -r1.61
  *** http_main.c       1996/08/19 18:32:58     1.60
  --- http_main.c       1996/08/19 18:44:16     1.61
  ***************
  *** 340,348 ****
    
    void usage(char *bin)
    {
  !     fprintf(stderr,"Usage: %s [-d directory] [-f file] [-v]\n",bin);
        fprintf(stderr,"-d directory : specify an alternate initial 
ServerRoot\n");
        fprintf(stderr,"-f file : specify an alternate ServerConfigFile\n");
        exit(1);
    }
    
  --- 340,350 ----
    
    void usage(char *bin)
    {
  !     fprintf(stderr,"Usage: %s [-d directory] [-f file] [-v] [-h]\n",bin);
        fprintf(stderr,"-d directory : specify an alternate initial 
ServerRoot\n");
        fprintf(stderr,"-f file : specify an alternate ServerConfigFile\n");
  +     fprintf(stderr,"-v : show version number\n");
  +     fprintf(stderr,"-h : list directives\n");
        exit(1);
    }
    
  ***************
  *** 1811,1816 ****
  --- 1813,1833 ----
    
    } /* standalone_main */
    
  + void show_directives()
  +     {
  +     extern module *prelinked_modules[];
  +     extern char *module_names[];
  +     command_rec *pc;
  +     int n;
  +     int t;
  +     
  +     for(t=0 ; prelinked_modules[t] ; ++t)
  +     ;
  +     for(n=0 ; prelinked_modules[n] ; ++n)
  +     for(pc=prelinked_modules[n]->cmds ; pc && pc->name ; ++pc)
  +         printf("%s\t%s\t%s\n",pc->name,pc->errmsg,module_names[t-n-1]);
  +     }
  + 
    extern char *optarg;
    extern int optind;
    
  ***************
  *** 1841,1847 ****
        strcpy (server_root, HTTPD_ROOT);
        strcpy (server_confname, SERVER_CONFIG_FILE);
    
  !     while((c = getopt(argc,argv,"Xd:f:v")) != -1) {
            switch(c) {
              case 'd':
                strcpy (server_root, optarg);
  --- 1858,1864 ----
        strcpy (server_root, HTTPD_ROOT);
        strcpy (server_confname, SERVER_CONFIG_FILE);
    
  !     while((c = getopt(argc,argv,"Xd:f:vh")) != -1) {
            switch(c) {
              case 'd':
                strcpy (server_root, optarg);
  ***************
  *** 1852,1857 ****
  --- 1869,1877 ----
              case 'v':
                printf("Server version %s.\n",SERVER_VERSION);
                exit(1);
  +           case 'h':
  +         show_directives();
  +         exit(1);
          case 'X':
            ++one_process;      /* Weird debugging mode. */
            break;
  
  
  

Reply via email to