This repository was archived by the owner on Mar 2, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathChangeLog
More file actions
159 lines (122 loc) · 6.13 KB
/
ChangeLog
File metadata and controls
159 lines (122 loc) · 6.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
06-22-2002 Julian Catchen <topeka@catchen.org>
*Fixed bug in mimeParseContentDisposition() that would cause a
segfault when processing an RFC2388 submission without a
filename submitted.
*Added missing #include to sys/types.h in examples/getinput.c to
make getinput build on FreeBSD.
*Fixed several build issues with autotools (i.e. I have become
one with automake and autoconf). GCGI now builds without issue
on GNU/Linux and FreeBSD.
06-15-2002 Julian Catchen <topeka@catchen.org>
*Added support for sending normal cookies and encrypted cookies. The
encrypted cookies require the OpenSSL libraries.
*Fixed crlfstringbuf typo in src/Makefile.am. Thanks to
Clinton Roy <croy@dstc.edu.au>.
*Added parsing code to make sure that is a filename is included in the
Content-Disposition header, that the full path is parsed off of it
(leaving only the filename). IE send the full path for some reason.
Thanks to Erik Dalin <dalen@jpl.se> for the heads-up on this one.
*Replaced setenv() with putenv() for compilation on BSD systems. Also
added casts to fix calls to isspace() on BSD.
*Moved all the encoding/decoding functions to the public header file
so they can be used by calling programs. This includes en/decoding
for base64, url encoding, quoted-printable encoding.
*Changed build process to use libtool, enabling the building of
shared GCGI library.
06-03-2002 Julian Catchen <topeka@catchen.org>
*Added functions to handle HTTP headers, including:
gcgiSendContentDisp() -- Send a Content-Disposition header
(inline/attached and a filename).
gcgiSendContentType() -- Send Content-Type header (Mime Type
like "text/html", a name and a character set).
gcgiSendLocation() -- Sends the Location header to redirect
the user to another page.
gcgiSendStatus() -- Sends a status header which can print out
a specific HTTP error code.
gcgiSendCacheControl() -- Sends Cache control headers to allow
the programmer to control whether their pages are cached by
the user's browser or a proxy along the way.
05-16-2002 Julian Catchen <topeka@catchen.org>
*Added ident(1) string to gcgi.c and environment variable
"HTTP_REFERER" to the envVar[] array -- thanks to
George Headley <headley@coherentpartners.com> for pointing out the
missing env variable and ident string.
03-20-2002 Julian Catchen <topeka@catchen.org>
*Created a new structure called CRLFStringBuf. This structure and its
functions will buffer an incoming stream of CRLF-terminated strings.
*Altered GCGI to use CRLFStringBuf to read in RFC2388 data. GCGI no
longer needs temporary files to store the incoming query.
*Added gcgiSetLimits() function. This function allows you to set
limits on how much data to read for an entire RFC2388 query, and for
a single MIME part.
*Added an addition example program called gcgiGetInput which allows
developers to easily capture the input of a CGI query for debugging
purposes.
02-14-2002 Julian Catchen <topeka@catchen.org>
*Altered gcgi.h so that it has no dependencies on other files in the
project.
*Made the library installable ('make install') using autotools.
*Moved the test programs to the "examples" subdirectory and made them
not build by default.
*Made gcgi useable for C++ programs.
02-08-2002 Julian Catchen <topeka@catchen.org>
*Found memory leak which was occurring in mimeParseContentType().
The leak was causing a seg fault whenever a complicated Content-Type:
header was present (one with a boundary or something similar).
*Fixed an error in findQueryStringColl() whereby the wrong node could
be selected if you have two or more form fields with similar names,
like this: "formfield" and "formfield-two".
01-26-2002 Julian Catchen <topeka@catchen.org>
*Updated project to use use autotools -- ./configure, make
*Added error checking to parsing routinges to handle empty/NULL
strings.
*Changed all checks for spaces, *p == ' ' to use issapce() instead.
01-23-2002 Julian Catchen <topeka@catchen.org>
*Altered gcgiFetchData so that it returns the MIME type, subtype
and encoding.
*Added function gcgiFieldSize() that returns the exact size of
the buffer that is holding the field. This is useful when
uploading binary files.
*Changed gcgiFieldLength to return the string length of the
field (used to return the buffer size).
01-21-2002 Julian Catchen <topeka@catchen.org>
*Fixed bug where by during MIME parsing too many CRLF sequences
were being removed from binary data, munging PNG files. The
correct behavior is to only remove the final CRLF before the MIME
boundary in binary data.
01-20-2002 Julian Catchen <topeka@catchen.org>
*Implemented a token parser for MIME headers. The parser breaks
the header into logical tokens which can then be parsed
individually.
*Added MimeFormat and MimeDisposition enum typedefs.
01-12-2002 Julian Catchen
*Fixed bug where RFC2388 decoding function was not deleting the
intermediate file it used to decode mime MIME message.
*Fixed bug that affected corner case of BASE64 decoding.
01-06-2002 Julian Catchen
*Changed gcgiLoadEnvVariables so that it can load environment
variables of any size, dynamically.
10-02-2001 Julian Catchen
*Added mimeEncodeBaseSixtyFourString() to encode base64 data.
*Optimized mimeDecodeBaseSixtyFourString()
*Added mimeEncodeQuotedPrintableString()
*Added mimeEncodeUrlString(), decodeUrlEncodedString()
*Added hextochar().
10-01-2001 Julian Catchen
*Added gcgiDebug() function to allow loading of environment
variables and query data from external files. Allows CGI
programs to be run from the command line or through a
debugger.
*Added HTTP_COOKIE to environment variables.
9-30-2001 Julian Catchen
*Fixed bug in urlDecode() function causing field name to
be overwritten. Affected GET queries.
9-26-2001 Julian Catchen
*typedef'ed the gcgi return types as gcgiReturnType.
Changed all external functions to return a gcgiReturnType
instead of an integer.
8-28-2001 Julian Catchen
*Changed Makefile to build a static library. It should
now be easier to build against gcgi. Releasing as v0.71.
8-26-2001 Julian Catchen
*Initial release of gcgi library, version 0.70.