Index: ossp-pkg/xds/regression-tests/Makefile RCS File: /v/ossp/cvs/ossp-pkg/xds/regression-tests/Attic/Makefile,v rcsdiff -q -kk '-r1.1' '-r1.2' -u '/v/ossp/cvs/ossp-pkg/xds/regression-tests/Attic/Makefile,v' 2>/dev/null --- Makefile 2001/07/04 15:09:55 1.1 +++ Makefile 2001/07/04 15:55:06 1.2 @@ -2,27 +2,27 @@ CC = gcc -WARNFLAGS = -Wall -ansi -pedantic +WARNFLAGS = -Wall -ansi -pedantic -Werror OPTFLAGS = -O3 -pipe CPPFLAGS = CFLAGS = -LDFLAGS = +LDFLAGS = -L.. -TESTS = test1.exe +TESTS = core.exe .SUFFIXES: .SUFFIXES: .c .exe .c.exe: - $(CC) $(CPPFLAGS) $(WARNFLAGS) $(OPTFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $< + $(CC) $(CPPFLAGS) $(WARNFLAGS) $(OPTFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $< -lxds .cpp.exe: - $(CXX) $(CPPFLAGS) $(WARNFLAGS) $(OPTFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $< + $(CXX) $(CPPFLAGS) $(WARNFLAGS) $(OPTFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $< -lxds all: $(TESTS) check: all - ./.run-tests *.exe + @./.run-tests $(TESTS) clean:: rm -f $(TESTS) *.log Index: ossp-pkg/xds/regression-tests/core.c RCS File: /v/ossp/cvs/ossp-pkg/xds/regression-tests/Attic/core.c,v co -q -kk -p'1.1' '/v/ossp/cvs/ossp-pkg/xds/regression-tests/Attic/core.c,v' | diff -u /dev/null - -L'ossp-pkg/xds/regression-tests/core.c' 2>/dev/null --- ossp-pkg/xds/regression-tests/core.c +++ - 2025-04-07 13:47:09.261892912 +0200 @@ -0,0 +1,75 @@ +/* + XDS - OSSP Extensible Data Serialization Library + Copyright (c) 2001 The OSSP Project (http://www.ossp.org/) + Copyright (c) 2001 Cable & Wireless Deutschland (http://www.cw.com/de/) + + This file is part of OSSP XDS, an extensible data serialization + library which can be found at http://www.ossp.com/pkg/xds/. + + Permission to use, copy, modify, and distribute this software for + any purpose with or without fee is hereby granted, provided that + the above copyright notice and this permission notice appear in all + copies. + + THIS SOFTWARE IS PROVIDED ``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 AUTHORS AND COPYRIGHT HOLDERS AND THEIR + 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 +#include +#include "../internal.h" + +int main() + { + xds_t* ctx[50]; + size_t i; + + /* Open a bunch of contextes and close them again. */ + + for(i = 0; i < sizeof(ctx)/sizeof(xds_t*); ++i) + { + if (i % 2 == 0) + ctx[i] = xds_init(XDS_ENCODE); + else + ctx[i] = xds_init(XDS_DECODE); + + if (ctx[i] == 0) + { + printf("Failed to initialize xds context: i = %d\n", i); + return 1; + } + } + + for(i = 0; i < sizeof(ctx)/sizeof(xds_t*); ++i) + xds_destroy(ctx[i]); + + + /* Check how the library deals with errorneous arguments. */ + + if (xds_init((xds_mode_t)42) != NULL || errno != EINVAL) + { + printf("Called xds_init() with invalid mode but didn't get EINVAL.\n"); + return 1; + } + + + /* Call xds_destroy() with an invalid context and see whether we + survive that. */ + + xds_destroy(NULL); + + + /* Everything went fine. */ + + return 0; + }