Imported latest version of the library.

This commit is contained in:
Peter Simons 2000-12-13 15:40:34 +00:00
parent b9c9b4eb68
commit 7d19d78886
5 changed files with 110 additions and 68 deletions

View File

@ -1,56 +0,0 @@
#
# libconfigfile Makefile
#
# $Header$
#
# Make Rules:
# ===========
#
.c.o:
$(CC) $(CFLAGS) $(CPPFLAGS) -c $<
# Compiler Flags:
# ===============
#
CFLAGS = -Wall
CPPFLAGS=
#
# Labels:
# =======
#
SRCS = config.c
OBJS = $(SRCS:.c=.o)
#
# Targets
#
.PHONY: all man clean depend
all: libconfigfile.a
man:
clean:
rm -f libconfigfile.a *.o *.3 *.core
depend:
makedepend -Y /usr/include $(SRCS)
@rm -f Makefile.bak
#
# Actions
#
libconfigfile.a: $(OBJS)
rm -f $@
$(AR) cr $@ $(OBJS)
$(RANLIB) $@
#
# Dependencies
#

12
libconfigfile/SMakefile Normal file
View File

@ -0,0 +1,12 @@
#
# Skeleton Makefile -- process with smake to create real Makefile.
#
# $Header$
#
.opt -o GNUmakefile.in
LIBRARY = configfile
SRCS = config.c
.include <library.smk>
.include <autoconf.base.smk>

View File

@ -1,10 +1,39 @@
/*
* $Source$
* $Revision$
* $Date$
* $Source$
* $Revision$
* $Date$
*
* Copyright (C) 1996,97 CyberSolutions GmbH.
* All rights reserved.
* Copyright (c) 1996-99 by Peter Simons <simons@cys.de>
* 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 Peter Simons.
*
* 4. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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 <fcntl.h>
@ -135,7 +164,7 @@ ReadConfig(const char * filename, /* path to the config file to parse */
should do a consistency check first. If the line passes,
there're no surprises when we actually parse it. */
if ((text_easy_pattern_match(currLine, "^[[:alnum:]_-]+[\t ]+[^\t ]")) == FALSE) {
if ((text_easy_pattern_match(currLine, "^[[:alnum:]_-]+[[:space:]]+[^[:space:]]+.*[^[:space:]]+[[:space:]]*$")) == FALSE) {
syslog(LOG_WARNING, "ReadConfig: Line \"%s\" is syntactically incorrect.",
currLine);
continue; /* ignore it */
@ -143,7 +172,7 @@ ReadConfig(const char * filename, /* path to the config file to parse */
/* Remove all unnecessary whitespace. */
rc = text_transform_text(currLine, currLine, "^([^\t ]+)[\t ]+([^\t ].*)[\t ]*$", "\\1 \\2");
rc = text_transform_text(currLine, currLine, "^([[:alnum:]_-]+)[[:space:]]+([^[:space:]]+.*[^[:space:]]+)[[:space:]]*$", "\\1 \\2");
if (rc != 0) {
syslog(LOG_WARNING, "ReadConfig: Internal error while parsing line: %d.", rc);
continue; /* ignore it */

View File

@ -1,10 +1,39 @@
/*
* $Source$
* $Revision$
* $Date$
* $Source$
* $Revision$
* $Date$
*
* Copyright (C) 1997 by CyberSolutions GmbH.
* All rights reserved.
* Copyright (c) 1996-99 by Peter Simons <simons@cys.de>
* 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 Peter Simons.
*
* 4. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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.
*/
#ifndef __LIB_CONFIGFILE_H__

View File

@ -0,0 +1,28 @@
dnl
dnl configure.in -- Process this file with autoconf to produce a configure script.
dnl
dnl $Header$
dnl
AC_INIT(configfile.h)
dnl Checks for paths and programs.
dnl
AC_PROG_CC
AC_PROG_RANLIB
dnl Enable warning flags for gcc.
dnl
if test "$GCC" = yes; then
CFLAGS="$CFLAGS -Wall -pedantic"
CXXFLAGS="$CXXFLAGS -Wall -pedantic"
fi
dnl Remove '-g' and '-O2' from the compile flags.
dnl
CFLAGS=`echo $CFLAGS | sed -e "s/-g//" -e "s/-O2//"`
CXXFLAGS=`echo $CXXFLAGS | sed -e "s/-g//" -e "s/-O2//"`
dnl Write results.
dnl
AC_OUTPUT(GNUmakefile)