removed Makefile from svn
authorMartin Willi <martin@strongswan.org>
Thu, 9 Aug 2007 07:14:56 +0000 (07:14 -0000)
committerMartin Willi <martin@strongswan.org>
Thu, 9 Aug 2007 07:14:56 +0000 (07:14 -0000)
support for scenario switching

src/dumm/Makefile [deleted file]
src/dumm/cowfs.c
src/dumm/cowfs.h
src/dumm/dumm.c
src/dumm/guest.c
src/dumm/main.c

diff --git a/src/dumm/Makefile b/src/dumm/Makefile
deleted file mode 100644 (file)
index 7933ab1..0000000
+++ /dev/null
@@ -1,532 +0,0 @@
-# Makefile.in generated by automake 1.10 from Makefile.am.
-# src/dumm/Makefile.  Generated from Makefile.in by configure.
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006  Free Software Foundation, Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-
-
-
-
-pkgdatadir = $(datadir)/strongswan
-pkglibdir = $(libdir)/strongswan
-pkgincludedir = $(includedir)/strongswan
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = i686-pc-linux-gnu
-host_triplet = i686-pc-linux-gnu
-ipsec_PROGRAMS = dumm$(EXEEXT)
-subdir = src/dumm
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.in
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-       $(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_CLEAN_FILES =
-am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
-am__vpath_adj = case $$p in \
-    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
-    *) f=$$p;; \
-  esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
-am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(ipsecdir)"
-libLTLIBRARIES_INSTALL = $(INSTALL)
-LTLIBRARIES = $(lib_LTLIBRARIES)
-libdumm_la_DEPENDENCIES =
-am_libdumm_la_OBJECTS = dumm.lo guest.lo iface.lo bridge.lo \
-       mconsole.lo cowfs.lo
-libdumm_la_OBJECTS = $(am_libdumm_la_OBJECTS)
-ipsecPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
-PROGRAMS = $(ipsec_PROGRAMS)
-am_dumm_OBJECTS = main.$(OBJEXT)
-dumm_OBJECTS = $(am_dumm_OBJECTS)
-dumm_DEPENDENCIES =
-DEFAULT_INCLUDES = -I.
-depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-       --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
-       $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-       --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
-       $(LDFLAGS) -o $@
-SOURCES = $(libdumm_la_SOURCES) $(dumm_SOURCES)
-DIST_SOURCES = $(libdumm_la_SOURCES) $(dumm_SOURCES)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = ${SHELL} /home/martin/strongswan/trunk/missing --run aclocal-1.10
-AMTAR = ${SHELL} /home/martin/strongswan/trunk/missing --run tar
-AR = ar
-AUTOCONF = ${SHELL} /home/martin/strongswan/trunk/missing --run autoconf
-AUTOHEADER = ${SHELL} /home/martin/strongswan/trunk/missing --run autoheader
-AUTOMAKE = ${SHELL} /home/martin/strongswan/trunk/missing --run automake-1.10
-AWK = mawk
-CC = gcc
-CCDEPMODE = depmode=gcc3
-CFLAGS = -Wall -Wno-format -Wno-pointer-sign -Wno-strict-aliasing -g -O2
-CPP = gcc -E
-CPPFLAGS = 
-CXX = g++
-CXXCPP = g++ -E
-CXXDEPMODE = depmode=gcc3
-CXXFLAGS = -g -O2
-CYGPATH_W = echo
-DEFS = -DPACKAGE_NAME=\"strongSwan\" -DPACKAGE_TARNAME=\"strongswan\" -DPACKAGE_VERSION=\"4.1.5\" -DPACKAGE_STRING=\"strongSwan\ 4.1.5\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"strongswan\" -DVERSION=\"4.1.5\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DPKCS11_DEFAULT_LIB=\"/usr/lib/opensc-pkcs11.so\" -DDEV_RANDOM=\"/dev/urandom\" -DRESOLV_CONF=\"/etc/resolv.conf\" -DDEV_URANDOM=\"/dev/urandom\" -DIPSEC_UID=0 -DIPSEC_GID=0 -DHAVE_DLFCN_H=1 -DYYTEXT_POINTER=1 -DHAVE_BACKTRACE=1 -DHAVE_GETIFADDRS=1 -DNO_CAPSET_DEFINED=1
-DEPDIR = .deps
-ECHO = echo
-ECHO_C = 
-ECHO_N = -n
-ECHO_T = 
-EGREP = /bin/grep -E
-EXEEXT = 
-F77 = 
-FFLAGS = 
-GPERF = /usr/bin/gperf
-GREP = /bin/grep
-INSTALL = /usr/bin/install -c
-INSTALL_DATA = ${INSTALL} -m 644
-INSTALL_PROGRAM = ${INSTALL}
-INSTALL_SCRIPT = ${INSTALL}
-INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
-LDFLAGS = 
-LEX = flex
-LEXLIB = -lfl
-LEX_OUTPUT_ROOT = lex.yy
-LIBOBJS = 
-LIBS = 
-LIBTOOL = $(SHELL) $(top_builddir)/libtool
-LINUX_HEADERS = 
-LN_S = ln -s
-LTLIBOBJS = 
-MAKEINFO = ${SHELL} /home/martin/strongswan/trunk/missing --run makeinfo
-MKDIR_P = /bin/mkdir -p
-OBJEXT = o
-PACKAGE = strongswan
-PACKAGE_BUGREPORT = 
-PACKAGE_NAME = strongSwan
-PACKAGE_STRING = strongSwan 4.1.5
-PACKAGE_TARNAME = strongswan
-PACKAGE_VERSION = 4.1.5
-PATH_SEPARATOR = :
-PERL = /usr/bin/perl
-PKG_CONFIG = 
-RANLIB = ranlib
-SET_MAKE = 
-SHELL = /bin/bash
-STRIP = strip
-VERSION = 4.1.5
-YACC = bison -y
-YFLAGS = 
-abs_builddir = /home/martin/strongswan/trunk/src/dumm
-abs_srcdir = /home/martin/strongswan/trunk/src/dumm
-abs_top_builddir = /home/martin/strongswan/trunk
-abs_top_srcdir = /home/martin/strongswan/trunk
-ac_ct_CC = gcc
-ac_ct_CXX = g++
-ac_ct_F77 = 
-am__include = include
-am__leading_dot = .
-am__quote = 
-am__tar = tar --format=ustar -chf - "$$tardir"
-am__untar = tar -xf -
-backenddir = ${exec_prefix}/libexec/ipsec/plugins/backends
-bindir = ${exec_prefix}/bin
-build = i686-pc-linux-gnu
-build_alias = 
-build_cpu = i686
-build_os = linux-gnu
-build_vendor = pc
-builddir = .
-confdir = ${sysconfdir}
-datadir = ${datarootdir}
-datarootdir = ${prefix}/share
-dbus_CFLAGS = 
-dbus_LIBS = 
-docdir = ${datarootdir}/doc/${PACKAGE_TARNAME}
-dvidir = ${docdir}
-eapdir = ${exec_prefix}/libexec/ipsec/plugins/eap
-exec_prefix = ${prefix}
-host = i686-pc-linux-gnu
-host_alias = 
-host_cpu = i686
-host_os = linux-gnu
-host_vendor = pc
-htmldir = ${docdir}
-includedir = ${prefix}/include
-infodir = ${datarootdir}/info
-install_sh = $(SHELL) /home/martin/strongswan/trunk/install-sh
-interfacedir = ${exec_prefix}/libexec/ipsec/plugins/interfaces
-ipsecdir = ${exec_prefix}/libexec/ipsec
-ipsecgid = 0
-ipsecuid = 0
-libdir = ${exec_prefix}/lib
-libexecdir = ${exec_prefix}/libexec
-linuxdir = ../include
-localedir = ${datarootdir}/locale
-localstatedir = ${prefix}/var
-mandir = ${datarootdir}/man
-mkdir_p = /bin/mkdir -p
-oldincludedir = /usr/include
-pdfdir = ${docdir}
-piddir = /var/run
-prefix = /usr/local
-program_transform_name = s,x,x,
-psdir = ${docdir}
-sbindir = ${exec_prefix}/sbin
-sharedstatedir = ${prefix}/com
-srcdir = .
-sysconfdir = /etc
-target_alias = 
-top_builddir = ../..
-top_srcdir = ../..
-xml_CFLAGS = 
-xml_LIBS = 
-lib_LTLIBRARIES = libdumm.la
-libdumm_la_SOURCES = dumm.c dumm.h guest.c guest.h iface.c iface.h bridge.c bridge.h mconsole.c mconsole.h cowfs.h cowfs.c
-dumm_SOURCES = main.c
-libdumm_la_LIBADD = -lstrongswan -lpthread -lbridge -lfuse
-dumm_LDADD = -ldumm -lreadline
-INCLUDES = -I$(top_srcdir)/src/libstrongswan
-AM_CFLAGS = -D_FILE_OFFSET_BITS=64
-all: all-am
-
-.SUFFIXES:
-.SUFFIXES: .c .lo .o .obj
-$(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
-       @for dep in $?; do \
-         case '$(am__configure_deps)' in \
-           *$$dep*) \
-             cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-               && exit 0; \
-             exit 1;; \
-         esac; \
-       done; \
-       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  src/dumm/Makefile'; \
-       cd $(top_srcdir) && \
-         $(AUTOMAKE) --gnu  src/dumm/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-       @case '$?' in \
-         *config.status*) \
-           cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
-         *) \
-           echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-           cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
-       esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure:  $(am__configure_deps)
-       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4):  $(am__aclocal_m4_deps)
-       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-install-libLTLIBRARIES: $(lib_LTLIBRARIES)
-       @$(NORMAL_INSTALL)
-       test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
-       @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
-         if test -f $$p; then \
-           f=$(am__strip_dir) \
-           echo " $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
-           $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
-         else :; fi; \
-       done
-
-uninstall-libLTLIBRARIES:
-       @$(NORMAL_UNINSTALL)
-       @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
-         p=$(am__strip_dir) \
-         echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \
-         $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \
-       done
-
-clean-libLTLIBRARIES:
-       -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
-       @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
-         dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
-         test "$$dir" != "$$p" || dir=.; \
-         echo "rm -f \"$${dir}/so_locations\""; \
-         rm -f "$${dir}/so_locations"; \
-       done
-libdumm.la: $(libdumm_la_OBJECTS) $(libdumm_la_DEPENDENCIES) 
-       $(LINK) -rpath $(libdir) $(libdumm_la_OBJECTS) $(libdumm_la_LIBADD) $(LIBS)
-install-ipsecPROGRAMS: $(ipsec_PROGRAMS)
-       @$(NORMAL_INSTALL)
-       test -z "$(ipsecdir)" || $(MKDIR_P) "$(DESTDIR)$(ipsecdir)"
-       @list='$(ipsec_PROGRAMS)'; for p in $$list; do \
-         p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
-         if test -f $$p \
-            || test -f $$p1 \
-         ; then \
-           f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
-          echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(ipsecPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(ipsecdir)/$$f'"; \
-          $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(ipsecPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(ipsecdir)/$$f" || exit 1; \
-         else :; fi; \
-       done
-
-uninstall-ipsecPROGRAMS:
-       @$(NORMAL_UNINSTALL)
-       @list='$(ipsec_PROGRAMS)'; for p in $$list; do \
-         f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
-         echo " rm -f '$(DESTDIR)$(ipsecdir)/$$f'"; \
-         rm -f "$(DESTDIR)$(ipsecdir)/$$f"; \
-       done
-
-clean-ipsecPROGRAMS:
-       @list='$(ipsec_PROGRAMS)'; for p in $$list; do \
-         f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
-         echo " rm -f $$p $$f"; \
-         rm -f $$p $$f ; \
-       done
-dumm$(EXEEXT): $(dumm_OBJECTS) $(dumm_DEPENDENCIES) 
-       @rm -f dumm$(EXEEXT)
-       $(LINK) $(dumm_OBJECTS) $(dumm_LDADD) $(LIBS)
-
-mostlyclean-compile:
-       -rm -f *.$(OBJEXT)
-
-distclean-compile:
-       -rm -f *.tab.c
-
-include ./$(DEPDIR)/bridge.Plo
-include ./$(DEPDIR)/cowfs.Plo
-include ./$(DEPDIR)/dumm.Plo
-include ./$(DEPDIR)/guest.Plo
-include ./$(DEPDIR)/iface.Plo
-include ./$(DEPDIR)/main.Po
-include ./$(DEPDIR)/mconsole.Plo
-
-.c.o:
-       $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-       mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-#      source='$<' object='$@' libtool=no \
-#      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
-#      $(COMPILE) -c $<
-
-.c.obj:
-       $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-       mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-#      source='$<' object='$@' libtool=no \
-#      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
-#      $(COMPILE) -c `$(CYGPATH_W) '$<'`
-
-.c.lo:
-       $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-       mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
-#      source='$<' object='$@' libtool=yes \
-#      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
-#      $(LTCOMPILE) -c -o $@ $<
-
-mostlyclean-libtool:
-       -rm -f *.lo
-
-clean-libtool:
-       -rm -rf .libs _libs
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '    { files[$$0] = 1; } \
-              END { for (i in files) print i; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       tags=; \
-       here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '    { files[$$0] = 1; } \
-              END { for (i in files) print i; }'`; \
-       if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
-         test -n "$$unique" || unique=$$empty_fix; \
-         $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-           $$tags $$unique; \
-       fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       tags=; \
-       here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '    { files[$$0] = 1; } \
-              END { for (i in files) print i; }'`; \
-       test -z "$(CTAGS_ARGS)$$tags$$unique" \
-         || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-            $$tags $$unique
-
-GTAGS:
-       here=`$(am__cd) $(top_builddir) && pwd` \
-         && cd $(top_srcdir) \
-         && gtags -i $(GTAGS_ARGS) $$here
-
-distclean-tags:
-       -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
-       @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
-       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
-       list='$(DISTFILES)'; \
-         dist_files=`for file in $$list; do echo $$file; done | \
-         sed -e "s|^$$srcdirstrip/||;t" \
-             -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
-       case $$dist_files in \
-         */*) $(MKDIR_P) `echo "$$dist_files" | \
-                          sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
-                          sort -u` ;; \
-       esac; \
-       for file in $$dist_files; do \
-         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
-         if test -d $$d/$$file; then \
-           dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
-           if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-             cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
-           fi; \
-           cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
-         else \
-           test -f $(distdir)/$$file \
-           || cp -p $$d/$$file $(distdir)/$$file \
-           || exit 1; \
-         fi; \
-       done
-check-am: all-am
-check: check-am
-all-am: Makefile $(LTLIBRARIES) $(PROGRAMS)
-installdirs:
-       for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(ipsecdir)"; do \
-         test -z "$$dir" || $(MKDIR_P) "$$dir"; \
-       done
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
-       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-         install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-         `test -z '$(STRIP)' || \
-           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
-       -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-
-maintainer-clean-generic:
-       @echo "This command is intended for maintainers to use"
-       @echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-generic clean-ipsecPROGRAMS clean-libLTLIBRARIES \
-       clean-libtool mostlyclean-am
-
-distclean: distclean-am
-       -rm -rf ./$(DEPDIR)
-       -rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
-       distclean-tags
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-info: info-am
-
-info-am:
-
-install-data-am: install-ipsecPROGRAMS
-
-install-dvi: install-dvi-am
-
-install-exec-am: install-libLTLIBRARIES
-
-install-html: install-html-am
-
-install-info: install-info-am
-
-install-man:
-
-install-pdf: install-pdf-am
-
-install-ps: install-ps-am
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
-       -rm -rf ./$(DEPDIR)
-       -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
-       mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am: uninstall-ipsecPROGRAMS uninstall-libLTLIBRARIES
-
-.MAKE: install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
-       clean-ipsecPROGRAMS clean-libLTLIBRARIES clean-libtool ctags \
-       distclean distclean-compile distclean-generic \
-       distclean-libtool distclean-tags distdir dvi dvi-am html \
-       html-am info info-am install install-am install-data \
-       install-data-am install-dvi install-dvi-am install-exec \
-       install-exec-am install-html install-html-am install-info \
-       install-info-am install-ipsecPROGRAMS install-libLTLIBRARIES \
-       install-man install-pdf install-pdf-am install-ps \
-       install-ps-am install-strip installcheck installcheck-am \
-       installdirs maintainer-clean maintainer-clean-generic \
-       mostlyclean mostlyclean-compile mostlyclean-generic \
-       mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
-       uninstall-am uninstall-ipsecPROGRAMS uninstall-libLTLIBRARIES
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
index 941211c..2c5dd38 100644 (file)
@@ -795,18 +795,29 @@ static struct fuse_operations cowfs_operations = {
 /**
  * Implementation of cowfs_t.set_scenario.
  */
-static void set_scenario(private_cowfs_t *this, char *path)
+static bool set_scenario(private_cowfs_t *this, char *path)
 {
        if (this->scen)
        {
                free(this->scen);
+               this->scen = NULL;
        }
        if (this->scen_fd > 0)
        {
                close(this->scen_fd);
+               this->scen_fd = -1;
        }
-       this->scen = strdup(path);
-       this->scen_fd = open(path, O_RDONLY | O_DIRECTORY);
+       if (path)
+       {
+               this->scen_fd = open(path, O_RDONLY | O_DIRECTORY);
+               if (this->scen_fd < 0)
+               {
+                       DBG1("failed to open scenario overlay directory '%s': %m", path);
+                       return FALSE;
+               }
+               this->scen = strdup(path);
+       }
+       return TRUE;
 }
 
 /**
@@ -839,7 +850,7 @@ cowfs_t *cowfs_create(char *master, char *host, char *mount)
        struct fuse_args args = {0, NULL, 0};
        private_cowfs_t *this = malloc_thing(private_cowfs_t);
        
-       this->public.set_scenario = (void(*)(cowfs_t*, char *path))set_scenario;
+       this->public.set_scenario = (bool(*)(cowfs_t*, char *path))set_scenario;
        this->public.destroy = (void(*)(cowfs_t*))destroy;
        
     this->master_fd = open(master, O_RDONLY | O_DIRECTORY);
index 2b6b5f8..fb1fc35 100644 (file)
@@ -16,6 +16,7 @@
 #ifndef COWFS_H
 #define COWFS_H
 
+#include <library.h>
 
 typedef struct cowfs_t cowfs_t;
 
@@ -29,8 +30,9 @@ struct cowfs_t {
         * @brief Set the scenario copy on write overlay.
         *
         * @param path          path of the overlay
+        * @return                      FALSE if failed
         */
-       void (*set_scenario)(cowfs_t *this, char *path);
+       bool (*set_scenario)(cowfs_t *this, char *path);
        
        /**
         * @brief Stop, umount and destroy a cowfs FUSE filesystem.
index 3d2ec58..cfe403f 100644 (file)
@@ -104,7 +104,9 @@ static iterator_t* create_bridge_iterator(private_dumm_t *this)
        return this->bridges->create_iterator(this->bridges, TRUE);
 }
 
-
+/**
+ * disable the currently enabled scenario 
+ */
 static void clear_scenario(private_dumm_t *this)
 {
        iterator_t *iterator;
@@ -130,42 +132,50 @@ static bool load_scenario(private_dumm_t *this, char *name)
        guest_t *guest;
        char dir[PATH_MAX];
        size_t len;
+       
+       if (name == NULL)
+       {
+               clear_scenario(this);
+               return TRUE;
+       }
 
        free(this->scenario);
        asprintf(&this->scenario, "%s/%s", this->scenario_dir, name);
+       mkdir(this->scenario_dir, PERME);
        
-       if (access(this->scenario, F_OK) == 0)
-       {       /* exists, load scenario */
-               DBG1("scenario loading unimplemented.");
+       len = snprintf(dir, sizeof(dir), "%s/%s", this->scenario, SCENARIO_DIFF_DIR);
+       if (len < 0 || len >= sizeof(dir))
+       {
+               clear_scenario(this);
                return FALSE;
        }
-       else
+       
+       if (access(this->scenario, F_OK) != 0)
        {       /* does not exist, create scenario */
                if (mkdir(this->scenario, PERME) != 0)
                {
                        DBG1("creating scenario directory '%s' failed: %m", this->scenario);
                        clear_scenario(this);
                        return FALSE;
-               }                       
-               len = snprintf(dir, sizeof(dir), "%s/%s/%s", this->scenario,
-                                          SCENARIO_DIR, SCENARIO_DIFF_DIR);
-               if (len < 0 || len >= sizeof(dir))
+               }
+               if (mkdir(dir, PERME) != 0)
                {
+                       DBG1("creating scenario overlay directory '%s' failed: %m", dir);
                        clear_scenario(this);
                        return FALSE;
                }
-               iterator = this->guests->create_iterator(this->guests, TRUE);
-               while (iterator->iterate(iterator, (void**)&guest))
+       }
+       iterator = this->guests->create_iterator(this->guests, TRUE);
+       while (iterator->iterate(iterator, (void**)&guest))
+       {
+               if (!guest->set_scenario(guest, dir))
                {
-                       if (!guest->set_scenario(guest, dir))
-                       {
-                               iterator->destroy(iterator);
-                               clear_scenario(this);
-                               return FALSE;
-                       }
+                       iterator->destroy(iterator);
+                       clear_scenario(this);
+                       return FALSE;
                }
-               iterator->destroy(iterator);
        }
+       iterator->destroy(iterator);
        return TRUE;
 }
 
index 24736f4..abed806 100644 (file)
@@ -259,6 +259,11 @@ static bool set_scenario(private_guest_t *this, char *path)
        char dir[PATH_MAX];
        size_t len;
        
+       if (path == NULL)
+       {
+               return this->cowfs->set_scenario(this->cowfs, NULL);    
+       }
+       
        len = snprintf(dir, sizeof(dir), "%s/%s", path, this->name);
        if (len < 0 || len >= sizeof(dir))
        {
@@ -272,8 +277,7 @@ static bool set_scenario(private_guest_t *this, char *path)
                        return FALSE;
                }
        }
-       this->cowfs->set_scenario(this->cowfs, dir);
-       return TRUE;
+       return this->cowfs->set_scenario(this->cowfs, dir);
 }
 
 /**
index 130cffe..a4389bc 100644 (file)
@@ -158,6 +158,7 @@ static void guest_addif_menu(guest_t *guest)
        {
                printf("creating interface failed\n");
        }
+       free(name);
 }
 
 static void guest_delif_menu(guest_t *guest)
@@ -186,6 +187,7 @@ static void guest_delif_menu(guest_t *guest)
        {
                printf("interface '%s' not found\n");
        }
+       free(name);
 }
 
 static void guest_menu(guest_t *guest)
@@ -252,6 +254,10 @@ static void guest_create_menu()
        {
                printf("failed to create guest '%s'\n", name);
        }
+       free(name);
+       free(kernel);
+       free(master);
+       free(mem);
 }
 
 static void guest_list_menu()
@@ -314,6 +320,8 @@ static void bridge_addif_menu(bridge_t *bridge)
                printf("failed to add interface '%s' to bridge '%s'\n", ifname,
                           bridge->get_name(bridge));
        }
+       free(name);
+       free(ifname);
 }
 
 static void bridge_delif_menu(bridge_t *bridge)
@@ -334,6 +342,8 @@ static void bridge_delif_menu(bridge_t *bridge)
                printf("failed to remove interface '%s' from bridge '%s'\n", ifname,
                           bridge->get_name(bridge));
        }
+       free(name);
+       free(ifname);
 }
 
 static void bridge_menu(bridge_t *bridge)
@@ -392,6 +402,7 @@ static void bridge_create_menu()
        {
                printf("failed to create bridge '%s'\n", name);
        }
+       free(name);
 }
 
 static void bridge_list_menu()
@@ -436,6 +447,17 @@ static void bridge_list_menu()
        }
 }
 
+static void scenario_menu()
+{
+       char *name;
+       
+       name = get_line("scenario name (or 'none'): ");
+       
+       dumm->load_scenario(dumm, streq(name, "none") ? NULL : name);
+       
+       free(name);
+}
+
 /**
  * Signal handler 
  */
@@ -508,9 +530,13 @@ int main(int argc, char *argv[])
                {
                        bridge_list_menu();
                }
+               else if (streq(line, "scenario"))
+               {
+                       scenario_menu();
+               }
                else
                {
-                       printf("quit|guest|bridge\n");
+                       printf("quit|guest|bridge|scenario\n");
                }
                free(line);
        }