diff options
Diffstat (limited to 'misc/unix')
-rw-r--r-- | misc/unix/.cvsignore | 1 | ||||
-rw-r--r-- | misc/unix/Makefile.in | 60 | ||||
-rw-r--r-- | misc/unix/getopt.c | 143 | ||||
-rw-r--r-- | misc/unix/misc.h | 71 | ||||
-rw-r--r-- | misc/unix/start.c | 210 |
5 files changed, 0 insertions, 485 deletions
diff --git a/misc/unix/.cvsignore b/misc/unix/.cvsignore deleted file mode 100644 index f3c7a7c5d..000000000 --- a/misc/unix/.cvsignore +++ /dev/null @@ -1 +0,0 @@ -Makefile diff --git a/misc/unix/Makefile.in b/misc/unix/Makefile.in deleted file mode 100644 index 80c7267e0..000000000 --- a/misc/unix/Makefile.in +++ /dev/null @@ -1,60 +0,0 @@ -#CFLAGS=$(OPTIM) $(CFLAGS1) $(EXTRA_CFLAGS) -#LIBS=$(EXTRA_LIBS) $(LIBS1) -#INCLUDES=$(INCLUDES1) $(INCLUDES0) $(EXTRA_INCLUDES) -#LDFLAGS=$(LDFLAGS1) $(EXTRA_LDFLAGS) - -RM=@RM@ -CC=@CC@ -RANLIB=@RANLIB@ -CFLAGS=@CFLAGS@ @OPTIM@ -LIBS=@LIBS@ -LDFLAGS=@LDFLAGS@ $(LIBS) -INCDIR=../../inc -INCDIR1=../../include -INCDIR2=../../file_io/unix -INCLUDES=-I$(INCDIR) -I$(INCDIR1) -I$(INCDIR2) -I. - -LIB=../libmisc.a - -OBJS=start.o getopt.o - -.c.o: - $(CC) $(CFLAGS) -c $(INCLUDES) $< - -all: $(LIB) - -clean: - $(RM) -f *.o *.a *.so - -distclean: clean - -$(RM) -f Makefile - -$(OBJS): Makefile - -$(LIB): $(OBJS) - $(RM) -f $@ - $(AR) cr $@ $(OBJS) - $(RANLIB) $@ - -# -# We really don't expect end users to use this rule. It works only with -# gcc, and rebuilds Makefile.tmpl. You have to re-run Configure after -# using it. -# -depend: - cp Makefile.in Makefile.in.bak \ - && sed -ne '1,/^# DO NOT REMOVE/p' Makefile.in > Makefile.new \ - && gcc -MM $(INCLUDES) $(CFLAGS) *.c >> Makefile.new \ - && sed -e '1,$$s: $(INCDIR)/: $$(INCDIR)/:g' \ - -e '1,$$s: $(OSDIR)/: $$(OSDIR)/:g' Makefile.new \ - > Makefile.in \ - && rm Makefile.new - -# DO NOT REMOVE -getopt.o: getopt.c misc.h ../../include/apr_general.h \ - ../../include/apr_config.h ../../include/apr_errno.h \ - ../../include/apr_file_io.h -start.o: start.c ../../include/apr_general.h \ - ../../include/apr_config.h ../../include/apr_errno.h \ - $(INCDIR)/apr_pools.h ../../include/apr_lib.h \ - ../../include/apr_file_io.h ../../include/hsregex.h misc.h diff --git a/misc/unix/getopt.c b/misc/unix/getopt.c deleted file mode 100644 index 55fb69b10..000000000 --- a/misc/unix/getopt.c +++ /dev/null @@ -1,143 +0,0 @@ -/* - * Copyright (c) 1987, 1993, 1994 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include "misc.h" - -int opterr = 1, /* if error message should be printed */ - optind = 1, /* index into parent argv vector */ - optopt, /* character checked for validity */ - optreset; /* reset getopt */ -char *optarg; /* argument associated with option */ - -#define EMSG "" - -/* ***APRDOC******************************************************** - * ap_status_t ap_getopt(ap_context_t *, ap_int32_t, char *const *, - * const char *, ap_int32_t) - * Parse the command line options passed to the program. - * arg 1) The context to operate on. - * arg 2) The number of arguments passed to ap_getopt to parse - * arg 3) The array of command line options to parse - * arg 4) A string of characters that are acceptable options to the program. - * characters followed by ":" are required to have an option - * associated - * arg 5) The next option found. There are four potential values for - * this variable on exit. They are: - * APR_EOF -- No more options to parse - * APR_BADCH -- Found a bad option character - * APR_BADARG -- Missing parameter for the found option - * Other -- The next option found. - * NOTE: Arguments 2 and 3 are most commonly argc and argv from - * main(argc, argv) - */ -ap_status_t ap_getopt(struct context_t *cont, ap_int32_t nargc, - char *const *nargv, const char *ostr, ap_int32_t *rv) -{ - char *p; - static char *place = EMSG; /* option letter processing */ - char *oli; /* option letter list index */ - - if (optreset || !*place) { /* update scanning pointer */ - optreset = 0; - if (optind >= nargc || *(place = nargv[optind]) != '-') { - place = EMSG; - *rv = optopt; - return (APR_EOF); - } - if (place[1] && *++place == '-') { /* found "--" */ - ++optind; - place = EMSG; - *rv = optopt; - return (APR_EOF); - } - } /* option letter okay? */ - if ((optopt = (int) *place++) == (int) ':' || - !(oli = strchr(ostr, optopt))) { - /* - * if the user didn't specify '-' as an option, - * assume it means -1. - */ - if (optopt == (int) '-') - *rv = optopt; - return (APR_EOF); - if (!*place) - ++optind; - if (opterr && *ostr != ':') { - if (!(p = strrchr(*nargv, '/'))) - p = *nargv; - else - ++p; - (void) fprintf(stderr, - "%s: illegal option -- %c\n", p, optopt); - } - *rv = optopt; - return APR_BADCH; - } - if (*++oli != ':') { /* don't need argument */ - optarg = NULL; - if (!*place) - ++optind; - } - else { /* need an argument */ - if (*place) /* no white space */ - optarg = place; - else if (nargc <= ++optind) { /* no arg */ - place = EMSG; - if (*ostr == ':') - *rv = optopt; - return (APR_BADARG); - if (opterr) { - if (!(p = strrchr(*nargv, '/'))) - p = *nargv; - else - ++p; - (void) fprintf(stderr, - "%s: option requires an argument -- %c\n", - p, optopt); - } - *rv = optopt; - return (APR_BADCH); - } - else /* white space */ - optarg = nargv[optind]; - place = EMSG; - ++optind; - } - *rv = optopt; - return APR_SUCCESS; -} - - diff --git a/misc/unix/misc.h b/misc/unix/misc.h deleted file mode 100644 index a496c372e..000000000 --- a/misc/unix/misc.h +++ /dev/null @@ -1,71 +0,0 @@ -/* ==================================================================== - * Copyright (c) 1999 The Apache Group. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the Apache Group - * for use in the Apache HTTP server project (http://www.apache.org/)." - * - * 4. The names "Apache Server" and "Apache Group" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * apache@apache.org. - * - * 5. Products derived from this software may not be called "Apache" - * nor may "Apache" appear in their names without prior written - * permission of the Apache Group. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the Apache Group - * for use in the Apache HTTP server project (http://www.apache.org/)." - * - * THIS SOFTWARE IS PROVIDED BY THE APACHE GROUP ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE APACHE GROUP OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This software consists of voluntary contributions made by many - * individuals on behalf of the Apache Group. - * For more information on the Apache Group and the Apache HTTP server - * project, please see <http://www.apache.org/>. - * - */ - -#ifndef MISC_H -#define MISC_H - -#include "apr_general.h" -#include "apr_file_io.h" -#include "apr_errno.h" - -struct context_t { - struct ap_pool_t *pool; - ap_int16_t signal_safe; - ap_int16_t cancel_safe; - void *prog_data; -}; - -#endif /* ! MISC_H */ - diff --git a/misc/unix/start.c b/misc/unix/start.c deleted file mode 100644 index 8b4bf00a3..000000000 --- a/misc/unix/start.c +++ /dev/null @@ -1,210 +0,0 @@ -/* ==================================================================== - * Copyright (c) 1999 The Apache Group. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the Apache Group - * for use in the Apache HTTP server project (http://www.apache.org/)." - * - * 4. The names "Apache Server" and "Apache Group" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * apache@apache.org. - * - * 5. Products derived from this software may not be called "Apache" - * nor may "Apache" appear in their names without prior written - * permission of the Apache Group. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the Apache Group - * for use in the Apache HTTP server project (http://www.apache.org/)." - * - * THIS SOFTWARE IS PROVIDED BY THE APACHE GROUP ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE APACHE GROUP OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This software consists of voluntary contributions made by many - * individuals on behalf of the Apache Group. - * For more information on the Apache Group and the Apache HTTP server - * project, please see <http://www.apache.org/>. - * - */ - -#include "apr_general.h" -#include "apr_errno.h" -#include "apr_pools.h" -#include "misc.h" -#include <pthread.h> -#include <signal.h> -#include <errno.h> -#include <string.h> - -/* ***APRDOC******************************************************** - * ap_status_t ap_create_context(ap_context_t *, void *, ap_context_t **) - * Create a new context. - * arg 1) The parent context. If this is NULL, the new context is a root - * context. If it is non-NULL, the new context will inherit all - * of it's parent context's attributes, except the pool will be a - * sub-pool. - * arg 2) Any data to be assocaited with the context. If this is a - * sub-context, and this value is NULL, the new context will - * inherit the data from it's parent. - * arg 3) The context we have just created. - */ -ap_status_t ap_create_context(struct context_t *cont, void *data, - struct context_t **newcont) -{ - struct context_t *new; - ap_pool_t *pool; - - if (cont) { - pool = ap_make_sub_pool(cont->pool); - } - else { - pool = ap_init_alloc();; - } - - if (pool == NULL) { - return APR_ENOPOOL; - } - - if (cont) { - new = (struct context_t *)ap_palloc(cont, sizeof(struct context_t)); - } - else { - new = (struct context_t *)malloc(sizeof(struct context_t)); - } - - new->pool = pool; - if (data == NULL && cont) { - new->prog_data = cont->prog_data; - } - else { - new->prog_data = data; - } - if (cont) { - new->signal_safe = cont->signal_safe; - new->cancel_safe = cont->cancel_safe; - } - else { - new->signal_safe = 0; - new->cancel_safe = 0; - } - - *newcont = new; - return APR_SUCCESS; -} - -/* ***APRDOC******************************************************** - * ap_status_t ap_set_signal_safe(ap_context_t *, ap_int16_t) - * Set the signal safe attribute of the program. If this bit-is on, then - * any apr function which uses this context IS signal safe. - * arg 1) The context to modify. - * arg 2) Should functions be signal safe or not? - */ -ap_status_t ap_set_signal_safe(struct context_t *cont, ap_int16_t safe) -{ - if (cont) { - cont->signal_safe = safe; - return APR_SUCCESS; - } - return APR_ENOCONT; -} - -/* ***APRDOC******************************************************** - * ap_status_t ap_set_cancel_safe(ap_context_t *, ap_int16_t) - * Set the cancel safe attribute of the program. If this bit-is off, then - * any thread which is in a function using this context IS NOT allowed - * to be cancelled. - * arg 1) The context to modify. - * arg 2) Should functions be cancellable or not? - */ -ap_status_t ap_set_cancel_safe(struct context_t *cont, ap_int16_t safe) -{ - if (cont) { - cont->cancel_safe = safe; - return APR_SUCCESS; - } - return APR_ENOCONT; -} - -/* ***APRDOC******************************************************** - * ap_status_t ap_destroy_context(ap_context_t *) - * Free the context and all of it's child contexts'. - * arg 1) The context to free. - */ -ap_status_t ap_destroy_context(struct context_t *cont) -{ - ap_destroy_pool(cont); - return APR_SUCCESS; -} - -/* ***APRDOC******************************************************** - * ap_status_t ap_set_userdata(ap_context_t *, void *) - * Set the data associated with the current context. - * arg 1) The current context. - * arg 2) The user data associated with the context. - */ -ap_status_t ap_set_userdata(struct context_t *cont, void *data) -{ - if (cont) { - cont->prog_data = data; - return APR_SUCCESS; - } - return APR_ENOCONT; -} - -/* ***APRDOC******************************************************** - * ap_status_t ap_get_userdata(ap_context_t *, void **) - * Return the data associated with the current context. - * arg 1) The current context. - * arg 2) The user data associated with the context. - */ -ap_status_t ap_get_userdata(struct context_t *cont, void **data) -{ - if (cont) { - (*data) = cont->prog_data; - return APR_SUCCESS; - } - return APR_ENOCONT; -} - -/* ***APRDOC******************************************************** - * ap_status_t ap_initialize() - * Setup any APR internal data structures. This MUST be the first - * function called for any APR program. - */ -ap_status_t ap_initialize(void) -{ -#ifdef HAVE_PTHREAD_H - sigset_t sigset; - - sigfillset(&sigset); - pthread_sigmask(SIG_BLOCK, &sigset, NULL); -#endif - return APR_SUCCESS; -} - |