diff options
Diffstat (limited to 'ACE/apps/JAWS/clients/WebSTONE/src/nsapi-includes/frame/httpact.h')
-rw-r--r-- | ACE/apps/JAWS/clients/WebSTONE/src/nsapi-includes/frame/httpact.h | 120 |
1 files changed, 120 insertions, 0 deletions
diff --git a/ACE/apps/JAWS/clients/WebSTONE/src/nsapi-includes/frame/httpact.h b/ACE/apps/JAWS/clients/WebSTONE/src/nsapi-includes/frame/httpact.h new file mode 100644 index 00000000000..a1e1a971bb8 --- /dev/null +++ b/ACE/apps/JAWS/clients/WebSTONE/src/nsapi-includes/frame/httpact.h @@ -0,0 +1,120 @@ +/* + * $Id$ + * + * Copyright (c) 1994, 1995. Netscape Communications Corporation. All + * rights reserved. + * + * Use of this software is governed by the terms of the license agreement for + * the Netscape Communications or Netscape Comemrce Server between the + * parties. + */ + + +/* ------------------------------------------------------------------------ */ + + +/* + * httpact.h: Defines the API characteristics for HTTP servers + * + * Rob McCool + */ + + +#ifndef HTTPACT_H +#define HTTPACT_H + +#include "frame/req.h" +#include "frame/object.h" + + +/* ------------------------------ Constants ------------------------------- */ + +#ifdef MCC_BATMAN +#define NUM_DIRECTIVES 5 +#else +#ifdef MCC_PROXY +#define NUM_DIRECTIVES 10 +#else +#define NUM_DIRECTIVES 7 +#endif +#endif + + +/* -------------------------- Generic Prototypes -------------------------- */ + + +/* + * directive_name2num will return the position of the abbreviated directive + * dir in the directive table. + * + * If dir does not exist in the table, it will return -1. + */ + +int directive_name2num(char *dir); + + +/* + * directive_num2name returns a string describing directive number num. + */ +const char *directive_num2name(int num); + + +/* + * servact_finderror looks through the request's object set to find a + * suitable error function to execute. Returns REQ_PROCEED if a function + * was found and executed successfully, REQ_NOACTION otherwise. + */ +int servact_finderror(Session *sn, Request *rq); + + +/* + * Read in and handle one request from the given session + */ +void servact_handle(Session *sn); + + +/* ----------------------- HTTP specific prototypes ----------------------- */ + + +int servact_handle_processed(Session *sn, Request *rq); + +/* + * Returns the translated path (filename) for the given uri, NULL otherwise. + * If authentication is required for the given uri, nothing is returned even + * if the current user has authenticated to that area. + */ +char *servact_translate_uri(char *uri, Session *sn); + + + +#ifdef MCC_PROXY + +/* ----------------------- proxy specific prototypes ---------------------- */ + +/* + * Resolves the given hostname, first trying to find a resolver + * function from obj.conf, and if that fails, just calls gethostbyname(). + * + */ +struct hostent *servact_gethostbyname(char *host, Session *sn, Request *rq); + + +/* + * Establishes a connection to the specified host and port using + * a Connect class function from obj.conf. Returns the sockect + * descriptor that is connected (and which should be SSL_Import()'ed + * by the caller). + * + * Returns -2 (REQ_NOACTION), if no such Connect class function exists. + * The caller should use the native connect mechanism in that case. + * + * Returns -1 (REQ_ABORT) on failure to connect. The caller should not + * attempt to use the native connect. + * + */ +int servact_connect(char *host, int port, Session *sn, Request *rq); + + +#endif /* ! MCC_PROXY */ + +#endif |