You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Rob Hartill <ha...@hyperreal.com> on 1995/09/05 20:38:33 UTC

SCO port of 8.0.11 (fwd)

Forwarded message:
>From <@h...@gonzo.ben.algroup.co.uk>  Tue Sep  5 11:34:47 1995
Subject: SCO port of 8.0.11
To: apache-bugs@apache.org
Date: Tue, 5 Sep 1995 19:02:59 +0100 (BST)
From: Ben Laurie <be...@gonzo.ben.algroup.co.uk>
Cc: ben@gonzo.ben.algroup.co.uk
MMDF-Warning:  Parse error in original version of preceding line at heap.ben.algroup.co.uk
Reply-To: ben@algroup.co.uk
X-Mailer: ELM [version 2.4 PL24 PGP2]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 8bit
Content-Length: 3832      
Message-ID:  <95...@gonzo.ben.algroup.co.uk>

Hi there,

Just porting Apache 0.8.11 to SCO, and here's the things I had to do to get it
to compile (nearly) cleanly:

1. in src/Configure, on SCO at least:

   egrep -v -s '^Module[ 	]+[A-Za-z0-9_]+[ 	]+[^ 	]+$'

should read:

   egrep -v '^Module[ 	]+[A-Za-z0-9_]+[ 	]+[^ 	]+$'

I don't know what the -s is supposed to do, tho...

2. in src/alloc.c

struct process_chain {
  int pid;
  enum kill_conditions kill_how;
  struct process_chain *next;
};

becomes:

struct process_chain {
  pid_t pid;
  enum kill_conditions kill_how;
  struct process_chain *next;
};

3. in src/conf.h

#elif defined(SCO)
#undef BSD
#undef NO_KILLPG
#undef NO_SETSID
#define NEED_INITGROUPS

#elif defined(CONVEXOS)

becomes:

#elif defined(SCO)
#undef BSD
#undef NO_KILLPG
#undef NO_SETSID
#define NEED_INITGROUPS
#define JMP_BUF jmp_buf
#define SIGURG SIGUSR1
#define getwd(d) getcwd(d,MAX_STRING_LEN)

#elif defined(CONVEXOS)

Note that (according to the docs) an ioctl() is required to make SIGUSR1
(SIGURG) happen on sockets. Apache doesn't seem to do one.

4. In src/httpd.h

struct server_rec {

  server_rec *next;
  
  /* Full locations of server config info */
  
  char *srm_confname;
  char *access_confname;
  
  /* Contact information */
  
  char *server_admin;
  char *server_hostname;
  
  /* Log files --- note that transfer log is now in the modules... */
  
  char *error_fname;
  FILE *error_log;
  
  /* Module-specific configuration for server, and defaults... */

  void *module_config;		/* Config vector containing pointers to
				 * modules' per-server config structures.
				 */
  void *lookup_defaults;	/* MIME type info, etc., before we start
				 * checking per-directory info.
				 */
  /* Transaction handling */

  int port;
  struct in_addr host_addr;	/* Specific address, if "virtual" server */
  int timeout;			/* Timeout, in seconds, before we give up */
  int do_rfc931;		/* See if client is advertising a username? */
  
};

becomes:

struct server_rec {

  server_rec *next;
  
  /* Full locations of server config info */
  
  char *srm_confname;
  char *access_confname;
  
  /* Contact information */
  
  char *server_admin;
  char *server_hostname;
  
  /* Log files --- note that transfer log is now in the modules... */
  
  char *error_fname;
  FILE *error_log;
  
  /* Module-specific configuration for server, and defaults... */

  void *module_config;		/* Config vector containing pointers to
				 * modules' per-server config structures.
				 */
  void *lookup_defaults;	/* MIME type info, etc., before we start
				 * checking per-directory info.
				 */
  /* Transaction handling */

  short port;
  struct in_addr host_addr;	/* Specific address, if "virtual" server */
  int timeout;			/* Timeout, in seconds, before we give up */
  int do_rfc931;		/* See if client is advertising a username? */
  
};

(Just port has changed from int to short).

4. In src/rfc931.c

extern char *inet_ntoa();

becomes:

#ifndef SCO
extern char *inet_ntoa();
#endif

Or, perhaps, it should go altogether

5. In src/http_request.c

int check_symlinks (char *d, char opts)

becomes:

int check_symlinks (char *d, int opts)

Or, fix all the calls which pass an int...


-------

What I need to do to make it _run_ I don't know (yet) ;-)
That's tomorrow's task.

I notice reference to SSL and HTTPS ... how's that coming along? Need any
help?

How does one become part of the Apache Team?

Cheers,

Ben.

-- 
Ben Laurie                  Phone: +44 (181) 994 6435
Freelance Consultant        Fax:   +44 (181) 994 6472
and Technical Director      Email: ben@algroup.co.uk (preferred)
A.L. Digital Ltd,                  benl@fear.demon.co.uk (backup)
London, England.

[Note for the paranoid: "fear" as in "Fear and Loathing
in Las Vegas", "demon" as in Demon Internet Services, a
commercial Internet access provider.]