diff -r -C3 ./Makefile.in ../cgicc-3.1.5-neu/Makefile.in *** ./Makefile.in Sat Mar 3 19:02:03 2001 --- ../cgicc-3.1.5-neu/Makefile.in Sun Oct 14 23:34:04 2001 *************** *** 92,112 **** CONFIG_HEADER = ./cgicc/config.h CONFIG_CLEAN_FILES = DIST_COMMON = README AUTHORS COPYING ChangeLog INSTALL Makefile.am \ ! Makefile.in NEWS THANKS acconfig.h acinclude.m4 aclocal.m4 \ ! cgicc/config.h.in cgicc/stamp-h.in configure configure.in DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) ! TAR = gtar GZIP_ENV = --best DIST_SUBDIRS = cgicc info support demo all: all-redirect .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) ! cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps Makefile ! Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status cd $(top_builddir) \ && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status --- 92,111 ---- CONFIG_HEADER = ./cgicc/config.h CONFIG_CLEAN_FILES = DIST_COMMON = README AUTHORS COPYING ChangeLog INSTALL Makefile.am \ ! Makefile.in NEWS THANKS acinclude.m4 aclocal.m4 configure configure.in DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) ! TAR = tar GZIP_ENV = --best DIST_SUBDIRS = cgicc info support demo all: all-redirect .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) ! cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile ! Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) cd $(top_builddir) \ && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status *************** *** 118,151 **** $(srcdir)/configure: @address@hidden(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) cd $(srcdir) && $(AUTOCONF) - cgicc/config.h: cgicc/stamp-h - @if test ! -f $@; then \ - rm -f cgicc/stamp-h; \ - $(MAKE) cgicc/stamp-h; \ - else :; fi - cgicc/stamp-h: $(srcdir)/cgicc/config.h.in $(top_builddir)/config.status - cd $(top_builddir) \ - && CONFIG_FILES= CONFIG_HEADERS=cgicc/config.h \ - $(SHELL) ./config.status - @echo timestamp > cgicc/stamp-h 2> /dev/null - $(srcdir)/cgicc/config.h.in: @address@hidden(srcdir)/cgicc/stamp-h.in - @if test ! -f $@; then \ - rm -f $(srcdir)/cgicc/stamp-h.in; \ - $(MAKE) $(srcdir)/cgicc/stamp-h.in; \ - else :; fi - $(srcdir)/cgicc/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h - cd $(top_srcdir) && $(AUTOHEADER) - @echo timestamp > $(srcdir)/cgicc/stamp-h.in 2> /dev/null - - mostlyclean-hdr: - - clean-hdr: - - distclean-hdr: - -rm -f cgicc/config.h - - maintainer-clean-hdr: - # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. # To change the values of `make' variables: instead of editing Makefiles, --- 117,122 ---- *************** *** 282,287 **** --- 253,263 ---- -rm -rf $(distdir) mkdir $(distdir) -chmod 777 $(distdir) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu Makefile @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ *************** *** 340,372 **** -rm -f config.cache config.log stamp-h stamp-h[0-9]* maintainer-clean-generic: ! mostlyclean-am: mostlyclean-hdr mostlyclean-tags mostlyclean-generic mostlyclean: mostlyclean-recursive ! clean-am: clean-hdr clean-tags clean-generic mostlyclean-am clean: clean-recursive ! distclean-am: distclean-hdr distclean-tags distclean-generic clean-am -rm -f libtool distclean: distclean-recursive -rm -f config.status ! maintainer-clean-am: maintainer-clean-hdr maintainer-clean-tags \ ! maintainer-clean-generic distclean-am @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." maintainer-clean: maintainer-clean-recursive -rm -f config.status ! .PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \ ! install-data-recursive uninstall-data-recursive install-exec-recursive \ ! uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \ ! all-recursive check-recursive installcheck-recursive info-recursive \ ! dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \ maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ --- 316,348 ---- -rm -f config.cache config.log stamp-h stamp-h[0-9]* maintainer-clean-generic: ! mostlyclean-am: mostlyclean-tags mostlyclean-generic mostlyclean: mostlyclean-recursive ! clean-am: clean-tags clean-generic mostlyclean-am clean: clean-recursive ! distclean-am: distclean-tags distclean-generic clean-am -rm -f libtool distclean: distclean-recursive -rm -f config.status ! maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ ! distclean-am @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." maintainer-clean: maintainer-clean-recursive -rm -f config.status ! .PHONY: install-data-recursive uninstall-data-recursive \ ! install-exec-recursive uninstall-exec-recursive installdirs-recursive \ ! uninstalldirs-recursive all-recursive check-recursive \ ! installcheck-recursive info-recursive dvi-recursive \ ! mostlyclean-recursive distclean-recursive clean-recursive \ maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ diff -r -C3 ./cgicc/CgiEnvironment.cpp ../cgicc-3.1.5-neu/cgicc/CgiEnvironment.cpp *** ./cgicc/CgiEnvironment.cpp Sun Oct 15 17:58:12 2000 --- ../cgicc-3.1.5-neu/cgicc/CgiEnvironment.cpp Mon Oct 15 01:58:23 2001 *************** *** 37,47 **** // ========== Constructor/Destructor ! CGICCNS CgiEnvironment::CgiEnvironment() { LOGLN("CgiEnvironment::CgiEnvironment") ! readEnvironmentVariables(); // On Win32, use binary read to avoid CRLF conversion #ifdef WIN32 --- 37,61 ---- // ========== Constructor/Destructor ! CGICCNS CgiEnvironment::CgiEnvironment(int) ! { ! LOGLN("CgiEnvironment::CgiEnvironment(int)") ! } ! ! CGICCNS CgiEnvironment::CgiEnvironment(void) ! { ! LOGLN("CgiEnvironment::CgiEnvironment(void)") ! Data data; ! do_init(data); ! } ! ! // Continue initialisation. getenv and ! void ! CGICCNS CgiEnvironment::do_init(CgiEnvironment::Data& data) { LOGLN("CgiEnvironment::CgiEnvironment") ! readEnvironmentVariables(data); // On Win32, use binary read to avoid CRLF conversion #ifdef WIN32 *************** *** 53,69 **** } else if(stringsAreEqual( getRequestMethod(), "post")) { LOGLN("POST method recognized") ! ! // should work, but not in egcs-1.1.2 or gcc-2.95 ! //auto_ptr temp = new char[getContentLength()]; ! char *temp = new char[getContentLength()]; ! STDNS cin.read(temp, getContentLength()); ! if(STDNS cin.gcount() != getContentLength()) { ! delete [] temp; ! throw STDNS runtime_error("I/O error"); ! } ! fPostData = STDNS string(temp, getContentLength()); ! delete [] temp; } fCookies.reserve(10); --- 67,73 ---- } else if(stringsAreEqual( getRequestMethod(), "post")) { LOGLN("POST method recognized") ! fPostData = data.readPostData(); } fCookies.reserve(10); *************** *** 131,168 **** // Read in all the environment variables void ! CGICCNS CgiEnvironment::readEnvironmentVariables() { ! fServerSoftware = safeGetenv("SERVER_SOFTWARE"); ! fServerName = safeGetenv("SERVER_NAME"); ! fGatewayInterface = safeGetenv("GATEWAY_INTERFACE"); ! fServerProtocol = safeGetenv("SERVER_PROTOCOL"); ! STDNS string port = safeGetenv("SERVER_PORT"); fServerPort = atol(port.c_str()); ! fRequestMethod = safeGetenv("REQUEST_METHOD"); ! fPathInfo = safeGetenv("PATH_INFO"); ! fPathTranslated = safeGetenv("PATH_TRANSLATED"); ! fScriptName = safeGetenv("SCRIPT_NAME"); ! fQueryString = safeGetenv("QUERY_STRING"); ! fRemoteHost = safeGetenv("REMOTE_HOST"); ! fRemoteAddr = safeGetenv("REMOTE_ADDR"); ! fAuthType = safeGetenv("AUTH_TYPE"); ! fRemoteUser = safeGetenv("REMOTE_USER"); ! fRemoteIdent = safeGetenv("REMOTE_IDENT"); ! fContentType = safeGetenv("CONTENT_TYPE"); ! STDNS string length = safeGetenv("CONTENT_LENGTH"); fContentLength = atol(length.c_str()); ! fAccept = safeGetenv("HTTP_ACCEPT"); ! fUserAgent = safeGetenv("HTTP_USER_AGENT"); ! fRedirectRequest = safeGetenv("REDIRECT_REQUEST"); ! fRedirectURL = safeGetenv("REDIRECT_URL"); ! fRedirectStatus = safeGetenv("REDIRECT_STATUS"); ! fReferrer = safeGetenv("HTTP_REFERER"); ! fCookie = safeGetenv("HTTP_COOKIE"); } void --- 135,174 ---- // Read in all the environment variables void ! CGICCNS CgiEnvironment::readEnvironmentVariables(CgiEnvironment::Data& data) { ! fServerSoftware = safeGetenv(data, "SERVER_SOFTWARE"); ! fServerName = safeGetenv(data, "SERVER_NAME"); ! fGatewayInterface = safeGetenv(data, "GATEWAY_INTERFACE"); ! fServerProtocol = safeGetenv(data, "SERVER_PROTOCOL"); ! STDNS string port = safeGetenv(data, "SERVER_PORT"); fServerPort = atol(port.c_str()); ! fRequestMethod = safeGetenv(data, "REQUEST_METHOD"); ! fPathInfo = safeGetenv(data, "PATH_INFO"); ! fPathTranslated = safeGetenv(data, "PATH_TRANSLATED"); ! fScriptName = safeGetenv(data, "SCRIPT_NAME"); ! fQueryString = safeGetenv(data, "QUERY_STRING"); ! fRemoteHost = safeGetenv(data, "REMOTE_HOST"); ! fRemoteAddr = safeGetenv(data, "REMOTE_ADDR"); ! fAuthType = safeGetenv(data, "AUTH_TYPE"); ! fRemoteUser = safeGetenv(data, "REMOTE_USER"); ! fRemoteIdent = safeGetenv(data, "REMOTE_IDENT"); ! fContentType = safeGetenv(data, "CONTENT_TYPE"); ! STDNS string length = safeGetenv(data, "CONTENT_LENGTH"); fContentLength = atol(length.c_str()); ! fUsingHTTPS = (data.getenv("HTTPS") != 0); ! ! fAccept = safeGetenv(data, "HTTP_ACCEPT"); ! fUserAgent = safeGetenv(data, "HTTP_USER_AGENT"); ! fRedirectRequest = safeGetenv(data, "REDIRECT_REQUEST"); ! fRedirectURL = safeGetenv(data, "REDIRECT_URL"); ! fRedirectStatus = safeGetenv(data, "REDIRECT_STATUS"); ! fReferrer = safeGetenv(data, "HTTP_REFERER"); ! fCookie = safeGetenv(data, "HTTP_COOKIE"); } void *************** *** 254,257 **** --- 260,290 ---- fCookies.clear(); fCookies.reserve(10); parseCookies(); + } + + const char * + CGICCNS CgiEnvironment::Data::getenv(const char *name) + { + return ::getenv(name); + } + + string + CGICCNS CgiEnvironment::Data::readPostData(void) + { + const char* lenstr = ::getenv("CONTENT_LENGTH"); + if (!lenstr) return ""; + + long length = atol(lenstr); + + // should work, but not in egcs-1.1.2 or gcc-2.95 + //auto_ptr temp = new char[length]; + char *temp = new char[length]; + STDNS cin.read(temp, length); + if(STDNS cin.gcount() != length) { + delete [] temp; + throw STDNS runtime_error("I/O error"); + } + string postdata = STDNS string(temp, length); + delete [] temp; + return postdata; } diff -r -C3 ./cgicc/CgiEnvironment.h ../cgicc-3.1.5-neu/cgicc/CgiEnvironment.h *** ./cgicc/CgiEnvironment.h Fri Aug 20 22:51:43 1999 --- ../cgicc-3.1.5-neu/cgicc/CgiEnvironment.h Mon Oct 15 01:29:17 2001 *************** *** 51,102 **** class CGICC_API CgiEnvironment { public: ! friend class Cgicc; ! /** Read in the environment */ CgiEnvironment(); ! /** Destructor */ ~CgiEnvironment(); ! /** * Get the name and version of the http server software. * An example of this is Apache/1.3.4. * @return The name of the server software */ ! inline STDNS string getServerSoftware() const { return fServerSoftware; } ! /** * Get the hostname, DNS name or IP address of the http server. * This is not a URL, for example www.gnu.org. * @return The name of the server */ ! inline STDNS string getServerName() const { return fServerName; } ! /** * Get the name and version of the gateway interface. * This is usually CGI/1.1. * @return The name and version of the gateway interface */ ! inline STDNS string getGatewayInterface() const { return fGatewayInterface;} ! /** * Get the name and revision of the protocol used for this request. * This is usually HTTP/1.0. * @return The protocol in use */ ! inline STDNS string getServerProtocol() const { return fServerProtocol; } ! /** * Get the port number on the server to which this request was sent. * This will usually be 80. --- 51,102 ---- class CGICC_API CgiEnvironment { public: ! friend class Cgicc; ! /** Read in the environment */ CgiEnvironment(); ! /** Destructor */ ~CgiEnvironment(); ! /** * Get the name and version of the http server software. * An example of this is Apache/1.3.4. * @return The name of the server software */ ! inline STDNS string getServerSoftware() const { return fServerSoftware; } ! /** * Get the hostname, DNS name or IP address of the http server. * This is not a URL, for example www.gnu.org. * @return The name of the server */ ! inline STDNS string getServerName() const { return fServerName; } ! /** * Get the name and version of the gateway interface. * This is usually CGI/1.1. * @return The name and version of the gateway interface */ ! inline STDNS string getGatewayInterface() const { return fGatewayInterface;} ! /** * Get the name and revision of the protocol used for this request. * This is usually HTTP/1.0. * @return The protocol in use */ ! inline STDNS string getServerProtocol() const { return fServerProtocol; } ! /** * Get the port number on the server to which this request was sent. * This will usually be 80. *************** *** 106,138 **** getServerPort() const { return fServerPort; } ! /** * Get the HTTP cookies associated with this query, if any. * @return The HTTP cookies */ ! inline STDNS string getCookies() const { return fCookie; } ! /** * Get a vector containing the HTTP cookies associated with this query. * @return A vector containing the HTTP cookies associated with this query. * @see HTTPCookie */ ! inline const STDNS vector& getCookieList() const { return fCookies; } ! /** * Get the request method used for this query. * This is usually one of GET or POST. * @return The request method */ ! inline STDNS string getRequestMethod() const { return fRequestMethod; } ! /** * Get the extra path information for this request, given by the client. * @return The absolute path info --- 106,138 ---- getServerPort() const { return fServerPort; } ! /** * Get the HTTP cookies associated with this query, if any. * @return The HTTP cookies */ ! inline STDNS string getCookies() const { return fCookie; } ! /** * Get a vector containing the HTTP cookies associated with this query. * @return A vector containing the HTTP cookies associated with this query. * @see HTTPCookie */ ! inline const STDNS vector& getCookieList() const { return fCookies; } ! /** * Get the request method used for this query. * This is usually one of GET or POST. * @return The request method */ ! inline STDNS string getRequestMethod() const { return fRequestMethod; } ! /** * Get the extra path information for this request, given by the client. * @return The absolute path info *************** *** 140,188 **** inline STDNS string getPathInfo() const { return fPathInfo; } ! /** * Get the translated path information (virtual to physical mapping). * @return The translated path info */ ! inline STDNS string getPathTranslated() const { return fPathTranslated; } ! /** * Get the path to this application, for self-referencing URLs. * @return The name of this application */ ! inline STDNS string getScriptName() const { return fScriptName; } ! /** * Get string following the ? in the URL which called this application. * This is usually only valid for scripts called with the GET method. * @return The query string */ ! inline STDNS string getQueryString() const { return fQueryString; } ! /** * Get the length of the data read from standard in, in chars. * @return The data length */ ! inline unsigned long getContentLength() const { return fContentLength; } ! /** * Get the content type of the attached information. * For POST methods, this is usually application/x-www-form-urlencoded. * @return The content type */ ! inline STDNS string getContentType() const { return fContentType; } ! /** * Get the data passed via standard input. * This data is of MIME type getContentType(). --- 140,188 ---- inline STDNS string getPathInfo() const { return fPathInfo; } ! /** * Get the translated path information (virtual to physical mapping). * @return The translated path info */ ! inline STDNS string getPathTranslated() const { return fPathTranslated; } ! /** * Get the path to this application, for self-referencing URLs. * @return The name of this application */ ! inline STDNS string getScriptName() const { return fScriptName; } ! /** * Get string following the ? in the URL which called this application. * This is usually only valid for scripts called with the GET method. * @return The query string */ ! inline STDNS string getQueryString() const { return fQueryString; } ! /** * Get the length of the data read from standard in, in chars. * @return The data length */ ! inline unsigned long getContentLength() const { return fContentLength; } ! /** * Get the content type of the attached information. * For POST methods, this is usually application/x-www-form-urlencoded. * @return The content type */ ! inline STDNS string getContentType() const { return fContentType; } ! /** * Get the data passed via standard input. * This data is of MIME type getContentType(). *************** *** 192,270 **** getPostData() const { return fPostData; } ! /** * Get the page which called this application. * Depending on the http server software, this may not be set. * @return The URL which called this application. */ ! inline STDNS string getReferrer() const { return fReferrer; } ! /** * Get the hostname making this request. * @return The remote host */ ! inline STDNS string getRemoteHost() const { return fRemoteHost; } ! /** * Get the IP address of the remote host making this request. * @return The remote IP address */ ! inline STDNS string getRemoteAddr() const { return fRemoteAddr; } ! /** * Get the protocol-specific user authentication method used. * This is only applicable if the server supports user authentication, * and the user has authenticated. * @return The authorization type */ ! inline STDNS string getAuthType() const { return fAuthType; } ! /** * Get the authenticated remote user name. * This is only applicable if the server supports user authentication, * and the user has authenticated. ! * @return The remote username */ ! inline STDNS string getRemoteUser() const { return fRemoteUser; } ! /** * Get the remote user name retrieved from the server. ! * This is only applicable if the server supports RFC 931 * identification. This variable should only be used * for logging. * @return The remote identification */ ! inline STDNS string getRemoteIdent() const { return fRemoteIdent; } ! /** * Get the MIME data types accepted by the client's browser. * For example image/gif, image/x-xbitmap, image/jpeg, image/pjpeg. * @return The accepted data types */ ! inline STDNS string getAccept() const { return fAccept; } ! /** * Get the name of the browser used for this CGI request. * For example Mozilla/4.01 [en] (WinNT; U). * @return The browser name */ ! inline STDNS string getUserAgent() const { return fUserAgent; } --- 192,270 ---- getPostData() const { return fPostData; } ! /** * Get the page which called this application. * Depending on the http server software, this may not be set. * @return The URL which called this application. */ ! inline STDNS string getReferrer() const { return fReferrer; } ! /** * Get the hostname making this request. * @return The remote host */ ! inline STDNS string getRemoteHost() const { return fRemoteHost; } ! /** * Get the IP address of the remote host making this request. * @return The remote IP address */ ! inline STDNS string getRemoteAddr() const { return fRemoteAddr; } ! /** * Get the protocol-specific user authentication method used. * This is only applicable if the server supports user authentication, * and the user has authenticated. * @return The authorization type */ ! inline STDNS string getAuthType() const { return fAuthType; } ! /** * Get the authenticated remote user name. * This is only applicable if the server supports user authentication, * and the user has authenticated. ! * @return The remote username */ ! inline STDNS string getRemoteUser() const { return fRemoteUser; } ! /** * Get the remote user name retrieved from the server. ! * This is only applicable if the server supports RFC 931 * identification. This variable should only be used * for logging. * @return The remote identification */ ! inline STDNS string getRemoteIdent() const { return fRemoteIdent; } ! /** * Get the MIME data types accepted by the client's browser. * For example image/gif, image/x-xbitmap, image/jpeg, image/pjpeg. * @return The accepted data types */ ! inline STDNS string getAccept() const { return fAccept; } ! /** * Get the name of the browser used for this CGI request. * For example Mozilla/4.01 [en] (WinNT; U). * @return The browser name */ ! inline STDNS string getUserAgent() const { return fUserAgent; } *************** *** 275,282 **** */ inline bool usingHTTPS() const ! { return (getenv("HTTPS") != 0); } ! /** * Get the redirect request. --- 275,282 ---- */ inline bool usingHTTPS() const ! { return bool(fUsingHTTPS); } ! /** * Get the redirect request. *************** *** 284,293 **** * to use in place of the default server messages. * @return The redirect request. */ ! inline STDNS string getRedirectRequest() const { return fRedirectRequest; } ! /** * Get the redirect URL. * This will only be valid if you are using this script as a script --- 284,293 ---- * to use in place of the default server messages. * @return The redirect request. */ ! inline STDNS string getRedirectRequest() const { return fRedirectRequest; } ! /** * Get the redirect URL. * This will only be valid if you are using this script as a script *************** *** 295,340 **** * @return The redirect URL. * @see \URL{http://hoohoo.ncsa.uiuc.edu/docs/setup/srm/ErrorDocument.html} */ ! inline STDNS string getRedirectURL() const { return fRedirectURL; } ! /** * Get the redirect status. * This will only be valid if you are using this script as a script * to use in place of the default server messages. * @return The redirect status. */ ! inline STDNS string getRedirectStatus() const { return fRedirectStatus; } ! protected: ! // Implementation of save ! void save(const STDNS string& filename) const; ! // Implementation of restore ! void restore(const STDNS string& filename); ! private: ! // Parse the list of cookies from a string to a vector ! void parseCookies(); // Parse a single cookie string (name=value) pair void parseCookie(const STDNS string& data); ! // Read in all the environment variables ! void ! readEnvironmentVariables(); ! unsigned long fServerPort; unsigned long fContentLength; STDNS string fServerSoftware; STDNS string fServerName; STDNS string fGatewayInterface; --- 295,362 ---- * @return The redirect URL. * @see \URL{http://hoohoo.ncsa.uiuc.edu/docs/setup/srm/ErrorDocument.html} */ ! inline STDNS string getRedirectURL() const { return fRedirectURL; } ! /** * Get the redirect status. * This will only be valid if you are using this script as a script * to use in place of the default server messages. * @return The redirect status. */ ! inline STDNS string getRedirectStatus() const { return fRedirectStatus; } ! protected: ! // Implementation of save ! void save(const STDNS string& filename) const; ! // Implementation of restore ! void restore(const STDNS string& filename); ! ! // for subclasses ! struct Data ! { ! virtual const char* getenv(const char *); ! virtual string readPostData(void); ! }; ! ! // defer initialisation ! CgiEnvironment(int); ! ! void ! do_init(Data&); ! private: ! // Parse the list of cookies from a string to a vector ! void parseCookies(); // Parse a single cookie string (name=value) pair void parseCookie(const STDNS string& data); ! // Read in all the environment variables ! void ! readEnvironmentVariables(Data&); ! ! // Fetch an environment variable ! string ! safeGetenv(Data& data, const char *varName) ! { ! const char *var = data.getenv(varName); ! return (var == 0) ? "" : var; ! } ! unsigned long fServerPort; unsigned long fContentLength; + unsigned long fUsingHTTPS; // really bool STDNS string fServerSoftware; STDNS string fServerName; STDNS string fGatewayInterface; diff -r -C3 ./cgicc/CgiUtils.cpp ../cgicc-3.1.5-neu/cgicc/CgiUtils.cpp *** ./cgicc/CgiUtils.cpp Mon Aug 9 20:25:31 1999 --- ../cgicc-3.1.5-neu/cgicc/CgiUtils.cpp Sun Oct 14 22:32:57 2001 *************** *** 28,41 **** #include "cgicc/CgiUtils.h" - // Fetch an environment variable - STDNS string - CGICCNS safeGetenv(const char *varName) - { - char *var = getenv(varName); - return (var == 0) ? "" : var; - } - // case-insensitive string comparison // This code based on code from // "The C++ Programming Language, Third Edition" by Bjarne Stroustrup --- 28,33 ---- diff -r -C3 ./cgicc/CgiUtils.h ../cgicc-3.1.5-neu/cgicc/CgiUtils.h *** ./cgicc/CgiUtils.h Tue Aug 10 01:03:41 1999 --- ../cgicc-3.1.5-neu/cgicc/CgiUtils.h Sun Oct 14 22:33:06 2001 *************** *** 59,74 **** CGICC_BEGIN_NAMESPACE - /** - * Query the value of an environment variable. - * This function never returns null. - * @param varName The name of an environment variable - * @return The value of the requested environment variable, or an empty - * string if not found. - */ - CGICC_API STDNS string - safeGetenv(const char *varName); - /* * Compare two strings for equality, ignoring case. * For case-sensitive comparison, use (s1 == s2); --- 59,64 ---- diff -r -C3 ./cgicc/Cgicc.cpp ../cgicc-3.1.5-neu/cgicc/Cgicc.cpp *** ./cgicc/Cgicc.cpp Sat Oct 2 21:10:10 1999 --- ../cgicc-3.1.5-neu/cgicc/Cgicc.cpp Mon Oct 15 19:33:45 2001 *************** *** 187,195 **** // ============================================================ // Class Cgicc // ============================================================ ! CGICCNS Cgicc::Cgicc() ! : fEnvironment() { #if DEBUG #if HAVE_STRFTIME time_t now; --- 187,207 ---- // ============================================================ // Class Cgicc // ============================================================ ! ! CGICCNS Cgicc::Cgicc(void) ! { ! do_init(new CgiEnvironment(), true); ! } ! ! CGICCNS Cgicc::Cgicc(int) { + } + + void CGICCNS Cgicc::do_init(CgiEnvironment* env, bool owning) + { + fEnvironment = env; + owning_fEnvironment = owning; + #if DEBUG #if HAVE_STRFTIME time_t now; *************** *** 219,224 **** --- 231,238 ---- CGICCNS Cgicc::~Cgicc() { LOGLN("Cleaning up...") + if (owning_fEnvironment) + delete fEnvironment; LOGLN("Cgicc debugging log closed.") } diff -r -C3 ./cgicc/Cgicc.h ../cgicc-3.1.5-neu/cgicc/Cgicc.h *** ./cgicc/Cgicc.h Thu Sep 30 19:38:19 1999 --- ../cgicc-3.1.5-neu/cgicc/Cgicc.h Mon Oct 15 01:40:30 2001 *************** *** 92,104 **** class CGICC_API Cgicc { public: ! /** Constructor */ Cgicc(); /** Destructor */ ~Cgicc(); - /** * Get the date on which this library was compiled. *

This is a string of the form mmm dd yyyy.

--- 92,103 ---- class CGICC_API Cgicc { public: ! /** Constructor, use standard CGI environment */ Cgicc(); /** Destructor */ ~Cgicc(); /** * Get the date on which this library was compiled. *

This is a string of the form mmm dd yyyy.

*************** *** 258,264 **** */ inline const CgiEnvironment& getEnvironment() const ! { return fEnvironment;} /** --- 257,263 ---- */ inline const CgiEnvironment& getEnvironment() const ! { return *fEnvironment;} /** *************** *** 274,282 **** */ void restore(const STDNS string& filename); private: ! CgiEnvironment fEnvironment; STDNS vector fFormData; STDNS vector fFormFiles; --- 273,290 ---- */ void restore(const STDNS string& filename); + + protected: + // the actual initialisation + void + do_init(CgiEnvironment*, bool); + + // defer initialisation + Cgicc(int); private: ! CgiEnvironment* fEnvironment; ! bool owning_fEnvironment; STDNS vector fFormData; STDNS vector fFormFiles; Only in ../cgicc-3.1.5-neu/cgicc: FcgiEnvironment.cpp Only in ../cgicc-3.1.5-neu/cgicc: FcgiEnvironment.h Only in ../cgicc-3.1.5-neu/cgicc: Fcgicc.cpp Only in ../cgicc-3.1.5-neu/cgicc: Fcgicc.h Only in ../cgicc-3.1.5-neu/cgicc: Makefile diff -r -C3 ./cgicc/Makefile.am ../cgicc-3.1.5-neu/cgicc/Makefile.am *** ./cgicc/Makefile.am Sat Oct 7 20:38:01 2000 --- ../cgicc-3.1.5-neu/cgicc/Makefile.am Sun Oct 14 23:33:58 2001 *************** *** 7,15 **** lib_LTLIBRARIES = libcgicc.la libcgicc_la_SOURCES = CgiEnvironment.cpp CgiUtils.cpp Cgicc.cpp \ FormEntry.cpp FormFile.cpp HTMLAttributes.cpp HTMLElements.cpp \ ! HTTPHeaders.cpp MStreamable.cpp libcgicc_la_LDFLAGS = -version-info 2:3:1 pkginclude_HEADERS = CgiDefs.h CgiEnvironment.h CgiUtils.h Cgicc.h \ FormEntry.h FormFile.h HTMLAttributes.h HTMLClasses.h HTMLElements.h \ ! HTMLGeneric.h HTTPHeaders.h MStreamable.h --- 7,15 ---- lib_LTLIBRARIES = libcgicc.la libcgicc_la_SOURCES = CgiEnvironment.cpp CgiUtils.cpp Cgicc.cpp \ FormEntry.cpp FormFile.cpp HTMLAttributes.cpp HTMLElements.cpp \ ! HTTPHeaders.cpp MStreamable.cpp FcgiEnvironment.cpp Fcgicc.cpp libcgicc_la_LDFLAGS = -version-info 2:3:1 pkginclude_HEADERS = CgiDefs.h CgiEnvironment.h CgiUtils.h Cgicc.h \ FormEntry.h FormFile.h HTMLAttributes.h HTMLClasses.h HTMLElements.h \ ! HTMLGeneric.h HTTPHeaders.h MStreamable.h FcgiEnvironment.h Fcgicc.h diff -r -C3 ./cgicc/Makefile.in ../cgicc-3.1.5-neu/cgicc/Makefile.in *** ./cgicc/Makefile.in Sat Mar 3 19:02:03 2001 --- ../cgicc-3.1.5-neu/cgicc/Makefile.in Sun Oct 14 23:34:04 2001 *************** *** 79,89 **** INCLUDES = -I$(top_srcdir) -I$(top_builddir) lib_LTLIBRARIES = libcgicc.la ! libcgicc_la_SOURCES = CgiEnvironment.cpp CgiUtils.cpp Cgicc.cpp FormEntry.cpp FormFile.cpp HTMLAttributes.cpp HTMLElements.cpp HTTPHeaders.cpp MStreamable.cpp libcgicc_la_LDFLAGS = -version-info 2:3:1 ! pkginclude_HEADERS = CgiDefs.h CgiEnvironment.h CgiUtils.h Cgicc.h FormEntry.h FormFile.h HTMLAttributes.h HTMLClasses.h HTMLElements.h HTMLGeneric.h HTTPHeaders.h MStreamable.h mkinstalldirs = $(SHELL) $(top_srcdir)/support/mkinstalldirs CONFIG_HEADER = config.h --- 79,89 ---- INCLUDES = -I$(top_srcdir) -I$(top_builddir) lib_LTLIBRARIES = libcgicc.la ! libcgicc_la_SOURCES = CgiEnvironment.cpp CgiUtils.cpp Cgicc.cpp FormEntry.cpp FormFile.cpp HTMLAttributes.cpp HTMLElements.cpp HTTPHeaders.cpp MStreamable.cpp FcgiEnvironment.cpp Fcgicc.cpp libcgicc_la_LDFLAGS = -version-info 2:3:1 ! pkginclude_HEADERS = CgiDefs.h CgiEnvironment.h CgiUtils.h Cgicc.h FormEntry.h FormFile.h HTMLAttributes.h HTMLClasses.h HTMLElements.h HTMLGeneric.h HTTPHeaders.h MStreamable.h FcgiEnvironment.h Fcgicc.h mkinstalldirs = $(SHELL) $(top_srcdir)/support/mkinstalldirs CONFIG_HEADER = config.h *************** *** 98,104 **** libcgicc_la_LIBADD = libcgicc_la_OBJECTS = CgiEnvironment.lo CgiUtils.lo Cgicc.lo \ FormEntry.lo FormFile.lo HTMLAttributes.lo HTMLElements.lo \ ! HTTPHeaders.lo MStreamable.lo CXXFLAGS = @CXXFLAGS@ CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) --- 98,104 ---- libcgicc_la_LIBADD = libcgicc_la_OBJECTS = CgiEnvironment.lo CgiUtils.lo Cgicc.lo \ FormEntry.lo FormFile.lo HTMLAttributes.lo HTMLElements.lo \ ! HTTPHeaders.lo MStreamable.lo FcgiEnvironment.lo Fcgicc.lo CXXFLAGS = @CXXFLAGS@ CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) *************** *** 112,119 **** DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) ! TAR = gtar GZIP_ENV = --best SOURCES = $(libcgicc_la_SOURCES) OBJECTS = $(libcgicc_la_OBJECTS) --- 112,123 ---- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) ! TAR = tar GZIP_ENV = --best + DEP_FILES = .deps/CgiEnvironment.P .deps/CgiUtils.P .deps/Cgicc.P \ + .deps/FcgiEnvironment.P .deps/Fcgicc.P .deps/FormEntry.P \ + .deps/FormFile.P .deps/HTMLAttributes.P .deps/HTMLElements.P \ + .deps/HTTPHeaders.P .deps/MStreamable.P SOURCES = $(libcgicc_la_SOURCES) OBJECTS = $(libcgicc_la_OBJECTS) *************** *** 121,129 **** .SUFFIXES: .SUFFIXES: .S .c .cpp .lo .o .s $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) ! cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps cgicc/Makefile ! Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status --- 125,133 ---- .SUFFIXES: .SUFFIXES: .S .c .cpp .lo .o .s $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) ! cd $(top_srcdir) && $(AUTOMAKE) --gnu cgicc/Makefile ! Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status *************** *** 183,191 **** $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p; \ done - .c.o: - $(COMPILE) -c $< - .s.o: $(COMPILE) -c $< --- 187,192 ---- *************** *** 202,210 **** maintainer-clean-compile: - .c.lo: - $(LIBTOOL) --mode=compile $(COMPILE) -c $< - .s.lo: $(LIBTOOL) --mode=compile $(COMPILE) -c $< --- 203,208 ---- *************** *** 277,282 **** --- 275,285 ---- subdir = cgicc distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu cgicc/Makefile @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ *************** *** 288,293 **** --- 291,346 ---- fi; \ done + DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) + + -include $(DEP_FILES) + + mostlyclean-depend: + + clean-depend: + + distclean-depend: + -rm -rf .deps + + maintainer-clean-depend: + + %.o: %.c + @echo '$(COMPILE) -c $<'; \ + $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + + %.lo: %.c + @echo '$(LTCOMPILE) -c $<'; \ + $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp + + %.o: %.cpp + @echo '$(CXXCOMPILE) -c $<'; \ + $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + + %.lo: %.cpp + @echo '$(LTCXXCOMPILE) -c $<'; \ + $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp info-am: info: info-am dvi-am: *************** *** 330,347 **** maintainer-clean-generic: mostlyclean-am: mostlyclean-hdr mostlyclean-libLTLIBRARIES \ mostlyclean-compile mostlyclean-libtool \ ! mostlyclean-tags mostlyclean-generic mostlyclean: mostlyclean-am clean-am: clean-hdr clean-libLTLIBRARIES clean-compile clean-libtool \ ! clean-tags clean-generic mostlyclean-am clean: clean-am distclean-am: distclean-hdr distclean-libLTLIBRARIES distclean-compile \ ! distclean-libtool distclean-tags distclean-generic \ ! clean-am -rm -f libtool distclean: distclean-am --- 383,400 ---- maintainer-clean-generic: mostlyclean-am: mostlyclean-hdr mostlyclean-libLTLIBRARIES \ mostlyclean-compile mostlyclean-libtool \ ! mostlyclean-tags mostlyclean-depend mostlyclean-generic mostlyclean: mostlyclean-am clean-am: clean-hdr clean-libLTLIBRARIES clean-compile clean-libtool \ ! clean-tags clean-depend clean-generic mostlyclean-am clean: clean-am distclean-am: distclean-hdr distclean-libLTLIBRARIES distclean-compile \ ! distclean-libtool distclean-tags distclean-depend \ ! distclean-generic clean-am -rm -f libtool distclean: distclean-am *************** *** 349,356 **** maintainer-clean-am: maintainer-clean-hdr \ maintainer-clean-libLTLIBRARIES \ maintainer-clean-compile maintainer-clean-libtool \ ! maintainer-clean-tags maintainer-clean-generic \ ! distclean-am @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." --- 402,409 ---- maintainer-clean-am: maintainer-clean-hdr \ maintainer-clean-libLTLIBRARIES \ maintainer-clean-compile maintainer-clean-libtool \ ! maintainer-clean-tags maintainer-clean-depend \ ! maintainer-clean-generic distclean-am @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." *************** *** 364,373 **** mostlyclean-libtool distclean-libtool clean-libtool \ maintainer-clean-libtool uninstall-pkgincludeHEADERS \ install-pkgincludeHEADERS tags mostlyclean-tags distclean-tags \ ! clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \ ! check-am installcheck-am installcheck all-recursive-am install-exec-am \ ! install-exec install-data-am install-data install-am install \ ! uninstall-am uninstall all-redirect all-am all installdirs \ mostlyclean-generic distclean-generic clean-generic \ maintainer-clean-generic clean mostlyclean distclean maintainer-clean --- 417,427 ---- mostlyclean-libtool distclean-libtool clean-libtool \ maintainer-clean-libtool uninstall-pkgincludeHEADERS \ install-pkgincludeHEADERS tags mostlyclean-tags distclean-tags \ ! clean-tags maintainer-clean-tags distdir mostlyclean-depend \ ! distclean-depend clean-depend maintainer-clean-depend info-am info \ ! dvi-am dvi check check-am installcheck-am installcheck all-recursive-am \ ! install-exec-am install-exec install-data-am install-data install-am \ ! install uninstall-am uninstall all-redirect all-am all installdirs \ mostlyclean-generic distclean-generic clean-generic \ maintainer-clean-generic clean mostlyclean distclean maintainer-clean Only in ../cgicc-3.1.5-neu/cgicc: config.h Only in ../cgicc-3.1.5-neu/cgicc: stamp-h Only in ../cgicc-3.1.5-neu: config.cache Only in ../cgicc-3.1.5-neu: config.log Only in ../cgicc-3.1.5-neu: config.status Only in ../cgicc-3.1.5-neu/demo: .deps Only in ../cgicc-3.1.5-neu/demo: Makefile diff -r -C3 ./demo/Makefile.in ../cgicc-3.1.5-neu/demo/Makefile.in *** ./demo/Makefile.in Sat Mar 3 19:02:04 2001 --- ../cgicc-3.1.5-neu/demo/Makefile.in Sun Oct 14 23:34:05 2001 *************** *** 119,126 **** DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) ! TAR = gtar GZIP_ENV = --best SOURCES = $(test_cgi_SOURCES) $(dns_cgi_SOURCES) $(upload_cgi_SOURCES) OBJECTS = $(test_cgi_OBJECTS) $(dns_cgi_OBJECTS) $(upload_cgi_OBJECTS) --- 119,127 ---- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) ! TAR = tar GZIP_ENV = --best + DEP_FILES = .deps/dns.P .deps/test.P .deps/upload.P SOURCES = $(test_cgi_SOURCES) $(dns_cgi_SOURCES) $(upload_cgi_SOURCES) OBJECTS = $(test_cgi_OBJECTS) $(dns_cgi_OBJECTS) $(upload_cgi_OBJECTS) *************** *** 128,136 **** .SUFFIXES: .SUFFIXES: .S .c .cpp .lo .o .s $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) ! cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps demo/Makefile ! Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status --- 129,137 ---- .SUFFIXES: .SUFFIXES: .S .c .cpp .lo .o .s $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) ! cd $(top_srcdir) && $(AUTOMAKE) --gnu demo/Makefile ! Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status *************** *** 144,152 **** maintainer-clean-noinstPROGRAMS: - .c.o: - $(COMPILE) -c $< - .s.o: $(COMPILE) -c $< --- 145,150 ---- *************** *** 163,171 **** maintainer-clean-compile: - .c.lo: - $(LIBTOOL) --mode=compile $(COMPILE) -c $< - .s.lo: $(LIBTOOL) --mode=compile $(COMPILE) -c $< --- 161,166 ---- *************** *** 232,237 **** --- 227,237 ---- subdir = demo distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu demo/Makefile @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ *************** *** 243,248 **** --- 243,298 ---- fi; \ done + DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) + + -include $(DEP_FILES) + + mostlyclean-depend: + + clean-depend: + + distclean-depend: + -rm -rf .deps + + maintainer-clean-depend: + + %.o: %.c + @echo '$(COMPILE) -c $<'; \ + $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + + %.lo: %.c + @echo '$(LTCOMPILE) -c $<'; \ + $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp + + %.o: %.cpp + @echo '$(CXXCOMPILE) -c $<'; \ + $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + + %.lo: %.cpp + @echo '$(LTCXXCOMPILE) -c $<'; \ + $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp info-am: info: info-am dvi-am: *************** *** 280,306 **** maintainer-clean-generic: mostlyclean-am: mostlyclean-noinstPROGRAMS mostlyclean-compile \ ! mostlyclean-libtool mostlyclean-tags \ mostlyclean-generic mostlyclean: mostlyclean-am clean-am: clean-noinstPROGRAMS clean-compile clean-libtool clean-tags \ ! clean-generic mostlyclean-am clean: clean-am distclean-am: distclean-noinstPROGRAMS distclean-compile \ ! distclean-libtool distclean-tags distclean-generic \ ! clean-am -rm -f libtool distclean: distclean-am maintainer-clean-am: maintainer-clean-noinstPROGRAMS \ maintainer-clean-compile maintainer-clean-libtool \ ! maintainer-clean-tags maintainer-clean-generic \ ! distclean-am @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." --- 330,356 ---- maintainer-clean-generic: mostlyclean-am: mostlyclean-noinstPROGRAMS mostlyclean-compile \ ! mostlyclean-libtool mostlyclean-tags mostlyclean-depend \ mostlyclean-generic mostlyclean: mostlyclean-am clean-am: clean-noinstPROGRAMS clean-compile clean-libtool clean-tags \ ! clean-depend clean-generic mostlyclean-am clean: clean-am distclean-am: distclean-noinstPROGRAMS distclean-compile \ ! distclean-libtool distclean-tags distclean-depend \ ! distclean-generic clean-am -rm -f libtool distclean: distclean-am maintainer-clean-am: maintainer-clean-noinstPROGRAMS \ maintainer-clean-compile maintainer-clean-libtool \ ! maintainer-clean-tags maintainer-clean-depend \ ! maintainer-clean-generic distclean-am @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." *************** *** 311,322 **** mostlyclean-compile distclean-compile clean-compile \ maintainer-clean-compile mostlyclean-libtool distclean-libtool \ clean-libtool maintainer-clean-libtool tags mostlyclean-tags \ ! distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ ! dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ ! install-exec install-data-am install-data install-am install \ ! uninstall-am uninstall all-redirect all-am all installdirs \ ! mostlyclean-generic distclean-generic clean-generic \ ! maintainer-clean-generic clean mostlyclean distclean maintainer-clean # Tell versions [3.59,3.63) of GNU make to not export all variables. --- 361,374 ---- mostlyclean-compile distclean-compile clean-compile \ maintainer-clean-compile mostlyclean-libtool distclean-libtool \ clean-libtool maintainer-clean-libtool tags mostlyclean-tags \ ! distclean-tags clean-tags maintainer-clean-tags distdir \ ! mostlyclean-depend distclean-depend clean-depend \ ! maintainer-clean-depend info-am info dvi-am dvi check check-am \ ! installcheck-am installcheck install-exec-am install-exec \ ! install-data-am install-data install-am install uninstall-am uninstall \ ! all-redirect all-am all installdirs mostlyclean-generic \ ! distclean-generic clean-generic maintainer-clean-generic clean \ ! mostlyclean distclean maintainer-clean # Tell versions [3.59,3.63) of GNU make to not export all variables. Only in ../cgicc-3.1.5-neu/info: Makefile diff -r -C3 ./info/Makefile.in ../cgicc-3.1.5-neu/info/Makefile.in *** ./info/Makefile.in Sat Mar 3 19:02:03 2001 --- ../cgicc-3.1.5-neu/info/Makefile.in Sun Oct 14 23:34:05 2001 *************** *** 104,118 **** DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) ! TAR = gtar GZIP_ENV = --best all: all-redirect .SUFFIXES: .SUFFIXES: .dvi .html .info .ps .texi .texinfo .txi $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) ! cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps info/Makefile ! Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status --- 104,118 ---- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) ! TAR = tar GZIP_ENV = --best all: all-redirect .SUFFIXES: .SUFFIXES: .dvi .html .info .ps .texi .texinfo .txi $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) ! cd $(top_srcdir) && $(AUTOMAKE) --gnu info/Makefile ! Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status *************** *** 265,270 **** --- 265,275 ---- subdir = info distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu info/Makefile @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ Only in ../cgicc-3.1.5-neu: libtool Only in ../cgicc-3.1.5-neu/support: Makefile diff -r -C3 ./support/Makefile.in ../cgicc-3.1.5-neu/support/Makefile.in *** ./support/Makefile.in Sat Mar 3 19:02:04 2001 --- ../cgicc-3.1.5-neu/support/Makefile.in Sun Oct 14 23:34:06 2001 *************** *** 91,104 **** DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) ! TAR = gtar GZIP_ENV = --best all: all-redirect .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) ! cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps support/Makefile ! Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status --- 91,104 ---- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) ! TAR = tar GZIP_ENV = --best all: all-redirect .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) ! cd $(top_srcdir) && $(AUTOMAKE) --gnu support/Makefile ! Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status *************** *** 132,137 **** --- 132,142 ---- subdir = support distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu support/Makefile @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ Only in ../cgicc-3.1.5-neu/support: cgicc-config