]> git.saurik.com Git - apple/security.git/blob - SecuritySNACCRuntime/ChangeLog
Security-54.1.tar.gz
[apple/security.git] / SecuritySNACCRuntime / ChangeLog
1 Fri Oct 10 13:43:18 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
2
3 * tcl-asn/makefile, tcl-asn/asnwish.c, tcl-asn/beredit, compiler/core/val-parser.c, tcl-asn/README, c-lib/src/tbl-gen.c, compiler/core/define.c, c++-examples/simple/good-pr.ber, c-examples/simple/good-pr.ber, version.h, README:
4 Corrected bug in generic table decoder wrt. indefinite length elements
5 Corrected compiler access to freed memory (bug reported by Markku Savela)
6 Broke asnwish.c into two pieces so that one can build ones on wish
7 Added beredit tool (based on asnwish, allowes to edit BER messages)
8
9 Tue Sep 16 15:05:10 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
10
11 * tbl-tools/berdecode/berdecode.c: Changed default value of strip to 0.
12
13 * entry.html: Documented current situation
14
15 Tue Sep 16 14:57:59 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
16
17 * README: Proper description of last-minute changes
18
19 * asn1specs/p-rec.asn1, tbl-example/p-rec.ber:
20 Added test for "tag dividable by 128" case.
21
22 * c-lib/src/tbl-enc.c, c-lib/src/tbl-gen.c:
23 Fixed "tag dividable by 128" case.
24 Fixed problem of peeking beyond tag size.
25
26 Fri Sep 5 07:15:06 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
27
28 * tcl-asn/asnwish.c: Picky compiler mods
29
30 Thu Sep 4 13:54:10 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
31
32 * tbl-tools/berdecode/berdecode.c, c++-lib/src/asn-list.C, configure.in:
33 A little more portability
34
35 Wed Sep 3 12:50:33 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
36
37 * compiler/makefile: Shifted parse and lex
38
39 * tcl-asn/makefile, tcl-asn/asnwish.c:
40 Reworked asnwish to neither strip nor encapsulate; instead,
41 buffer reads during decoding incrementally Tcl_Read the channel.
42
43 * c-lib/src/tbl-enc.c, c-lib/src/asn-tag.c:
44 Patch to tag decoding for tags > 2^14 (thanks to Enrico Badella)
45 Patch to TblEncTag to emit final 0x00 if previous octet signals continuation
46
47 * c++-lib/src/asn-tag.C:
48 Patch to tag decoding for tags > 2^14 (thanks to Enrico Badella)
49
50 Mon Sep 1 14:21:03 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
51
52 * compiler/core/err-chk.c: Improved error output in certain cases.
53
54 Thu Aug 28 09:48:08 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
55
56 * README, entry.html, ChangeLog: Added description of changes
57
58 * compiler/core/lex-asn1.l, compiler/core/parse-asn1.y:
59 Reworked number range checking, only gives warning now.
60
61 Wed Aug 27 15:56:09 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
62
63 * tcl-asn/README, tcl-asn/asnwish.c, tcl-asn/makefile, tbl-tools/berdecode/berdecode.c, tbl-tools/berdecode/makefile, tbl-tools/berdecode/README, tbl-tools/makefile, c-lib/src/tbl-dbg.c, c-lib/src/tbl-gen.c, c-lib/inc/tbl-dbg.h, c-lib/inc/tbl-gen.h, c-lib/makefile:
64 Added generic table decoding, debug routines, berdecode, and asnwish.
65
66 * c++-lib/src/asn-bits.C:
67 GetBit now returns 0 or 1, not 0 or <#bit>, even if bool type is emulated.
68
69 * version.h, makefile:
70 Added generic table decoding, debug routines, berdecode, and asnwish.
71
72 Thu Jun 19 09:32:22 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
73
74 * README: Added 1.3b3 change description
75
76 * doc/makefile: Disabled making new doc due to new version string.
77
78 * compiler/boot/tbl.h, compiler/boot/tbl.c, c-lib/boot/tbl.h, c-lib/boot/tbl.c:
79 Remade by make tar
80
81 * version.h: Fixed release date.
82
83 * tbl-tools/ptbl/pasn1.c, compiler/core/lex-asn1.l, compiler/core/parse-asn1.y, compiler/boot/tbl.c, compiler/boot/tbl.h, compiler/core/gen-tbls.c, c-lib/boot/tbl.h, c-lib/src/tbl-util.c, c-lib/boot/tbl.c, asn1specs/tbl.asn1, version.h:
84 Added isPdu flag to tables. Added value range checks during parsing.
85
86 Wed May 7 15:20:57 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
87
88 * README, tbl-tools/ptbl/pasn1.c, compiler/core/gen-tbls.h, compiler/core/snacc.c, c-lib/inc/tbl-incl.h, compiler/core/gen-tbls.c, asn1specs/tbl.asn1, version.h:
89 Added (limited) size constraints, bitstring and enumeration names to tables
90
91 * compiler/back-ends/c-gen/gen-vals.c:
92 Fixed bug in C value string generation.
93
94 Mon Apr 7 13:14:16 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
95
96 * README: Final README for 1.3b1
97
98 * snacc.h: Made more C++ readable (credits to Steve Walker)
99
100 Thu Mar 20 15:50:25 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
101
102 * version.h, README: Push to 1.3b1.
103
104 Thu Mar 13 14:48:28 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
105
106 * compiler/core/parse-asn1.y:
107 Parsed SEQUENCE SIZE(..) OF as SET, corrected.
108
109 * compiler/boot/tbl.h, compiler/boot/tbl.c, compiler/back-ends/idl-gen/gen-code.c, c-lib/src/print.c, c-lib/src/asn-tag.c, c-lib/inc/asn-config.h, c-lib/boot/tbl.h, c-lib/boot/tbl.c, c-lib/boot/asn-useful.h, c-lib/boot/asn-useful.c, c-lib/makefile, c++-lib/makefile, version.h:
110 Improved dependency generation for stupid makedepends.
111 Corrected PeekTag to peek into buffer only as far as necessary.
112 Added installable error handler.
113 Fixed small glitch in idl-code generator (Markku Savela <msa@msa.tte.vtt.fi>).
114
115 Mon Mar 3 11:58:34 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
116
117 * compiler/core/parse-asn1.y, compiler/boot/tbl.c, compiler/boot/tbl.h, compiler/makefile, c-lib/boot/tbl.c, c-lib/boot/tbl.h, c-lib/boot/asn-useful.c, c-lib/boot/asn-useful.h, c++-examples/test-lib/makefile, acconfig.h, makefile, ChangeLog:
118 Final pre-delivery stuff (I hope).
119
120 Fri Feb 28 13:43:53 1997 Sebastian Wangnick <sebastian.wangnick@eurocontrol.be>
121
122 * version.h: New version #.
123
124 * .cvsignore: Added config.cache
125
126 * tcl-lib/snacced.tcl, tcl-example/edex1.asn1, tcl-lib/selbox.tcl, compiler/core/parse-asn1.y, compiler/core/print.c, compiler/back-ends/c-gen/gen-dec.c, compiler/back-ends/c++-gen/gen-code.c, c-lib/src/tbl-util.c, compiler/makefile, c-lib/src/hash.c, c-lib/src/nibble-alloc.c, c-lib/src/tbl-free.c, c-lib/src/asn-real.c, c-lib/src/asn-tag.c, c-lib/inc/asn-any.h, c-lib/inc/hash.h, c-lib/src/asn-any.c, c++-lib/src/tkAppInit.c, c-lib/tbl.h.patch, c++-lib/src/meta.C, c++-lib/src/tcl-if.C, c++-lib/src/asn-oid.C, c++-lib/src/asn-real.C, c++-lib/src/hash.C, c++-lib/src/asn-int.C, c++-lib/src/asn-octs.C, c++-lib/src/asn-bits.C, c++-lib/src/asn-bool.C, c++-lib/src/asn-enum.C, c++-lib/inc/meta.h, c++-lib/src/asn-any.C, c++-examples/test-lib/test-lib.C, c++-lib/inc/hash.h, c++-examples/test-lib/makefile, configure.in, snacc.h, acconfig.h:
127 Modifications collected for new version 1.3: Bug fixes, tk4.2.
128
129 Sun Feb 16 22:26:40 1997 rj <rj@masoms2.mas.hide>
130
131 * README: url corrected
132
133 * c-examples/test-lib/README, c-examples/any/example.c, c-examples/any/README, c++-lib/src/str-stk.C, c++-lib/src/print.C, c++-lib/src/hash.C, c++-lib/src/asn-tag.C, c++-lib/src/asn-len.C, c++-lib/src/asn-bool.C, c++-lib/src/asn-any.C, c++-lib/inc/str-stk.h, c++-lib/inc/print.h, c++-lib/inc/hash.h, c++-lib/inc/asn-type.h, c++-lib/inc/asn-tag.h, c++-lib/inc/asn-real.h, c++-lib/inc/asn-octs.h, c++-lib/inc/asn-list.h, c++-lib/inc/asn-incl.h, c++-lib/inc/asn-buf.h, c++-lib/inc/asn-bits.h, c++-examples/test-lib/README, c++-examples/any/README, asn1specs/ex1.asn1, asn1specs/any.asn1:
134 check-in of a few cosmetic changes
135
136 * README, ChangeLog, version.h: final release of snacc 1.2rj
137
138 * makefile: remove tcl-p when making clobber
139
140 * INITIAL: first check-in
141
142 * tcl-example/.cvsignore: ignore yet two more generated files
143
144 * doc/makefile: typo fixed
145
146 * c++-examples/any/.cvsignore, c-examples/any/.cvsignore:
147 ignore more generated files and directories
148
149 * c++-examples/simple/.cvsignore, c-examples/simple/.cvsignore:
150 ignore generated directories
151
152 * c-examples/test-lib/.cvsignore: ignore yet another generated file
153
154 * tbl-example/.cvsignore: ignore two more generated files
155
156 * tbl-tools/pval/.cvsignore, tbl-tools/ptbl/.cvsignore, tbl-tools/mkchdr/.cvsignore:
157 ignore yet another generated file
158
159 * makefile: correct path to configure script
160
161 * compiler/makefile: snacc is needed to generate the distfiles
162
163 * tcl-example/.cvsignore: ignore more generated files
164
165 * tbl-tools/mkchdr/.cvsignore: ignore yet another generated file
166
167 * tbl-example/.cvsignore, doc/.cvsignore:
168 ignore yet two more generated files
169
170 * doc/.cvsignore: ignore yet another generated file
171
172 * tcl-example/.cvsignore, tbl-tools/pval/.cvsignore, tbl-tools/ptbl/.cvsignore, tbl-tools/mkchdr/.cvsignore, tbl-example/.cvsignore, c-examples/test-lib/.cvsignore:
173 ignore the dependencies file
174
175 * c-examples/snmp/.cvsignore, c-examples/simple/.cvsignore, c-examples/any/.cvsignore, c++-examples/test-lib/.cvsignore, c++-examples/snmp/.cvsignore, c++-examples/simple/.cvsignore, c++-examples/any/.cvsignore:
176 ignore yet another file
177
178 * c++-lib/.cvsignore: ignore generated directories
179
180 * c++-lib/.cvsignore, compiler/.cvsignore:
181 ignore yet another generated file
182
183 * c-lib/.cvsignore: ignore more generated files and directories
184
185 * doc/thisnextafter.tex, doc/misc-defs.tex, doc/list-popup.eps, doc/str-popup.eps, doc/struct.eps, doc/simple.eps, doc/selbox.eps, doc/recur.eps, doc/example.eps, c-lib/tbl.h.patch:
186 first check-in
187
188 * makefile: generate tcl-p before it is needed...
189
190 * configure.in, doc/intro-1.2.tex, c++-lib/makefile, c++-examples/snmp/makefile, c++-examples/simple/makefile, c++-examples/any/makefile:
191 made return *this after calling abort()'' a compile time option.
192
193 * maketail: rule to generate $(TCL-P) added
194
195 * makehead.in, doc/snacc.1, compiler/back-ends/c++-gen/gen-code.h, compiler/back-ends/c++-gen/gen-code.c:
196 made return *this after calling abort()'' a compile time option.
197
198 * compiler/core/snacc.c:
199 made ``return *this after calling abort()'' a compile time option.
200
201 * c++-lib/inc/asn-oid.h: construct in the order the members are defined
202
203 * tcl-example/makefile: remove more generated files
204
205 * compiler/back-ends/c++-gen/gen-code.c:
206 use the TIME_WITH_SYS_TIME flag (checked and generated by configure).
207 return *this after calling abort() for compilers that don't know about this volatile function.
208 comment out unused parameters, the compiler otherwise may complain.
209
210 * compiler/makefile:
211 let make clobber remove the link to install-sh that make made
212 let make clean remove more created files
213
214 * c-lib/makefile:
215 let make clobber remove the link to install-sh that make made
216
217 * c++-lib/src/asn-oid.C: name lookup of \for' scoping
218
219 * c++-lib/inc/asn-null.h: comment out an unused argument
220
221 * c++-lib/inc/asn-len.h: make the unsigned value unsigned :-)
222
223 Sun Feb 16 05:22:42 1997 Robert Joop <rj@rainbow.in-berlin.de>
224
225 * ***** this is the end, my last words on my final snacc release, 1.2rj.10. *****
226
227 * lots of files and directories added to the various .cvsignore files.
228
229 * added a file INITIAL to explain the first steps necessary after
230 an initial cvs checkout.
231
232 * made ``return *this after calling abort()'' a compile time
233 option.
234
235 * compiler/back-ends/c++-gen/gen-code.c: comment out unused
236 parameters, the compiler otherwise may complain.
237
238 * compiler/back-ends/c++-gen/gen-code.c: return *this after
239 calling abort() for compilers that don't know about this volatile
240 function.
241
242 * compiler/back-ends/c++-gen/gen-code.c: use the
243 TIME_WITH_SYS_TIME flag (checked and generated by configure)
244
245 * changes for new ANSI `for' scoping
246
247 Sat Feb 15 19:09:43 1997 Robert Joop <rj@rainbow.in-berlin.de>
248
249 * configure.in and acconfig.h: check whether the compiler supports
250 volatile functions (and whether abort() is volatile). In member
251 functions, return *this after calling abort() for those stupid
252 compilers (they would otherwise abort with an error).
253
254 * tbl-tools/ and tbl-example/ directoies added.
255
256 * compiler/core/snacc.c: do not silently ignore the -tcl option if
257 not compiled for tcl code generation
258
259 * compiler/core/snacc.c: use the TIME_WITH_SYS_TIME flag (checked
260 and generated by configure)
261
262 * c++-lib/src/asn-list.C: names of Tcl*-functions fixed (obviously
263 they weren't needed :-)
264
265 * c++-lib/inc/tcl-if.h, c++-lib/src/tcl-if.C: `typename' appears
266 to be a reserved word in gcc 2.7, so prefix it with `_'
267
268 * c++-lib/src/asn-bits.C: dereferencing pointer to member function
269 is neither necessary nor allowed
270
271 * c++-lib/src/asn-type.C: "virtual" removed from functions. (fix
272 due to changed C++ language.)
273
274 Thu Sep 7 20:21:39 1995 Robert Joop (rj@rainbow.in-berlin.de)
275
276 * deep copying code added to C++ backend generated assignment
277 operators.
278
279 * c-lib/makefile and c++-lib/makefile: asn-useful.asn1 is compiled
280 with the -l 50 option, as recommended by MS in the documentation.
281
282 * compiler/back-ends/c++-gen/kwd.c: bool, true and false are
283 reserved words in new C++ (supported by gcc since version 2.6).
284
285 * new options -mA and -mC for snacc(1) that switch the names used
286 between those defined in the ASN.1 files and those used in the
287 generated C++ code. enum type MetaNameStyle introduced.
288
289 * c++-lib/src/tcl-if.C: duplicate code merged into a new function
290 SnaccTcl::gettypedesc().
291
292 * c++-lib/*: long int replaced by AsnIntType at a lot of
293 places. It shall provide a 32 bit integer type on all platforms.
294 new type introduced: AsnUIntType (32 bit unsigned integer type).
295
296 Thu Aug 17 17:01:59 1995 Robert Joop (rj@rainbow.in-berlin.de)
297
298 * c++-lib/*/asn-real.[hC]: recognize and return "±inf" for
299 PLUS-INFINITY/MINUS-INFINITY
300
301 * c++-lib/*/asn-enum.[hC]: AsnEnumTypeDesc gets its own TclGetVal
302 and TclSetVal functions.
303
304 * c++-lib/*/meta.[hC]: introduce an AsnEnumTypeDesc class with its
305 own TclGetDesc2 function that returns the value names but omits
306 the numeric values.
307
308 * c++-lib/src/tcl-if.C &al.: set Tcl's errorCode variable
309
310 * c++-lib/{inc,src}: snacced.[hC] renamed to tcl-if.[hC]. class
311 SnaccEd renamed to SnaccTcl.
312
313 * the PDU flag belongs to the metacode, not only to the tcl
314 interface. (type and variable named adjusted)
315
316 Thu Jul 27 10:27:07 1995 Robert Joop (rj@rainbow.in-berlin.de)
317
318 * cpp macro TBL changed to TTBL since some type table code uses
319 TBL as a type name.
320
321 * c++-lib/makefile: make $(TCL-P) if necessary.
322
323 * c++-lib/makefile: actions for stamp-useful rule: call diff only
324 if both input files exist.
325
326 * rfc1155-smi.asn1, rfc1157-snmp.asn1 and rfc1213-mib2.asn1
327 renamed from 1155-smi.asn1, 1157-snmp.asn1 and 1213-mib2.asn1 to
328 accomodate to snacc's new file name generation scheme.
329
330 Tue Jul 25 13:35:58 1995 Robert Joop (rj@rainbow.in-berlin.de)
331
332 * policy.h: added switch for (en|dis)abling the compilation of the
333 idl code generator.
334
335 * compiler: PrintConditionalIncludeOpen() and
336 PrintConditionalIncludeClose() moved from
337 back-ends/c-gen/gen-code.[ch] to back-ends/cond.[ch].
338
339 * .../compiler/back-ends/c++-gen/gen-vals.c: use true/false
340 instead of AsnBool::true/false.
341
342 * the compiler is compiled from two files, tbl.h and tbl.c, it
343 generates itself. for bootstrapping purposes, initial versions are
344 supplied with the distribution.
345
346 Mon Jul 24 14:26:16 1995 Robert Joop (rj@rainbow.in-berlin.de)
347
348 * .../c++-lib: code extracted from AsnOcts::TclGetVal and
349 AsnOcts::TclSetVal (src/asn-octs.C) into ::debinify and ::binify
350 (src/meta.C).
351
352 * Clone() added to AsnEnum.
353
354 * various C++ files: ``#error "..."'' instead of ``#error ...''
355
356 * c++-lib/*/asn-list.?: operator == and != return bool instead of int.
357
358 * .../maketail: the .C.o default rule now uses CXXFLAGS instead of
359 CFLAGS for compilation.
360
361 * .../c-lib and c++-lib call make recursively to generate the
362 different depencies for all the different makefiles.
363
364 * .../configure looks for tclsh(1)---the tcl-lib uses it to
365 construct the tclIndex file. .../configure doesn't look for Tcl/Tk
366 if the tclsh is absent.
367
368 * .../configure looks for patch(1)---the c-lib uses it to patch
369 tbl.h.
370
371 * .../configure searches for tree-3.6's libtktree.a and sets
372 TREELIBS in .../makehead accordingly.
373
374 * type table tools and the example merged into the distribution:
375 .../tbl-tools/ and .../tbl-example.
376
377 * dummy action added to config.h.in and config.h rules to trick
378 many makes' overoptimization.
379
380 * snacc -h now prints the usage to stdout.
381
382 * bug report address changed to protect an innocent's mailbox :-)
383
384 * .../version.h contains the snacc version---it is included in the
385 compiler source and is used by the .../makefile upon tar-file
386 generation.
387
388 * configure checks for memset(3), memcpy(3) and memcmp(3) and
389 .../snac.h defines replacements using bzero(3), bcopy(3) and
390 bcmp(3) if necessary.
391
392 * .../compiler/core/mem.c: Realloc() now checks realloc(3)'s
393 return value.
394
395 * changed `_' to `-' in file names.
396
397 * file names in .../compiler/back-ends/ have been shortened for
398 redundant parts (e.g. c_gen/gen_c_code -> c_gen/gen_code or
399 c++_gen/c++_kwd -> c++_gen/kwd).
400
401 Sun Jul 23 12:51:24 1995 Robert Joop (rj@rainbow.in-berlin.de)
402
403 * an additional type description, AsnAliasTypeDesc, for type
404 definitions of the form ``TypeB ::= TypeA''. see the documentation
405 for further details.
406
407 * allow for more than one PDU per .asn1 file set:
408 - each type description gets a bool flag, pdu.
409 - each type description gets accompanied with a create function
410 that returns a newly allocated object of its mirror type. the type
411 description contains a pointer to this function. the getTclPDU()
412 function is deleted.
413 - compiler/core/meta.h: struct TclPDU becomes a linked list. it
414 gets a flag `used' to detect invalid command line arguments.
415
416 * additional function TclUnsetVal() to delete OPTIONAL members and
417 SEQUENCE OF and SET OF list elements.
418
419 *_getref() gets an additional optional argument, bool
420 create=false, to faciliate the different member access semantics
421 of TclGetVal() and TclSetVal().
422
423 * to accomodate to snacc's new file name generation scheme:
424 - useful.asn1 renamed to asn-useful.asn1
425 - any-test.[hC] renamed to any.[hC]
426
427 * by default, snacc now derives output file names from the .asn1
428 input file name instead of the module name. a global variable,
429 `keepbaseG', is used to toggle between old and new behaviour.
430
431 Sat Jul 22 22:49:25 1995 Robert Joop (rj@rainbow.in-berlin.de)
432
433 * use install-sh instead of install.sh, to prevent `make' implicit
434 rules from creating a file called install from it when there is no
435 makefile.
436
437 Mon Feb 20 12:38:00 1995 Robert Joop (rj@rainbow.in-berlin.de)
438
439 * c{,++}_lib/makefile: remove stamp-useful before removing
440 asn_useful.[hcC].
441
442 Sun Feb 19 19:13:50 1995 Robert Joop (rj@rainbow.in-berlin.de)
443
444 * some c{,++}_examples/*/makefile: some make(1)s leave a trailing
445 `/' on $(@D). since some mkdir(1)s deny their cooperation with
446 such arguments, this slash has got to be stripped.
447
448 Sat Feb 18 14:12:23 1995 Robert Joop (rj@rainbow.in-berlin.de)
449
450 * in a lot of makefiles: dirname(1) and basename(1) do not exist
451 on every system. so we're using $(@D) and $(@F) instead.
452
453 * the code partially relied on big endianess. autoconf is used to
454 (un)define WORDS_BIGENDIAN accordingly and the byte order
455 dependent code parts have been fixed.
456
457 * instead of relying on (sizeof (int) == 4), autoconf now checks
458 some integer sizes and cpp is used to select appropiatly sized
459 integer types.
460
461 * c++_lib/{inc/asn_list.h,src/asn_list.C}: #pragma
462 interface/implementation are GNU specific and need to be wrapped
463 (by #ifdef __GNUG__).
464
465 * configure.in, acconfig.h, misc .C files: added #define
466 HAVE_VARIABLE_SIZED_AUTOMATIC_ARRAYS (we need to check for this
467 since not every C++ compiler provides them.)
468
469 * snacc.h: added #defines GLASS and KHO for wrapping and enabling
470 of project and user specific code, resp.
471
472 Fri Feb 17 15:27:31 1995 Robert Joop (rj@rainbow.in-berlin.de)
473
474 * c_examples/simple/README: reflect the test script's integration
475 into the makefile.
476
477 * makehead.in, maketail: added a small hack to find gcc's hidden
478 include directory to pass it to makedepend. this shall enable
479 X11's makedepend to find .h files a little more the way gcc does.
480
481 * configure.in, changes for autoconf 2.x
482
483 Mon Feb 13 15:43:10 1995 Robert Joop (rj@rainbow.in-berlin.de)
484
485 * miscelleanous makefiles: make depend builds snacc if and where
486 necessary.
487
488 * makefiles changed to augment CPPFLAGS instead of overriding
489 them.
490
491 * CFLAGS, CXXFLAGS and LDFLAGS moved from the various makefiles to
492 makehead(.in).
493
494 * settings for IEEE_REAL_FMT/IEEE_REAL_LIB moved from
495 {c_lib,c++_lib}/inc/asn_config.h to acconfig.h.
496
497 Mon Oct 10 01:59:50 1994 Robert Joop (rj@rainbow.in-berlin.de)
498
499 * compiler/back_ends/c++_gen/gen_c++_code.c: the list functions
500 Append(), Prepend(), InsertBefore() and InsertAfter() now set the
501 current element to the element just inserted.
502
503 Sat Oct 8 02:20:20 1994 Robert Joop (rj@rainbow.in-berlin.de)
504
505 * since autoconf substitutes in config.h.bot as well, we can't use
506 it. therefore it has been renamed to snacc.h and it includes the
507 config.h (generated by autoconf/configure) and policy.h (edited by
508 the person who wishes to compile/install/use snacc).
509
510 * the compiler is generated with a file it generates itself. for
511 bootstraping purposes, an initial version is supplied in the
512 distribution (c_lib/boot/asn_useful.[hc]).
513
514 * to complement the destructors, T::T (const T&) and
515 T &T::operator = (const T &) have been added to override the
516 defaults supplied by the compiler. reason: simple pointer
517 duplication may lead to unreferenced objects and to objects
518 referenced more than once (on which the destructors delete may
519 choke).
520
521 * three bugs in compiler/back_ends/c++_gen/gen_c++_code.c's list
522 functions fixed (IBM ENC detected and fixed it at only place only).
523
524 * at the same places as the below two points: code for a Tcl
525 interface added.
526
527 * c++_lib/*: meta code for the basic types added. (and a little
528 glue code in compiler/core/snacc.c)
529
530 * compiler/back_ends/c++_gen/gen_c++_code.c: code added that (on
531 request) added meta information to the C++ classes generated.
532
533 * compiler/back_ends/c++_gen/gen_c++_code.c: turned character
534 pointers into constant character arrays.
535
536 * several `unsigned long int' turned into `size_t' (C++ code
537 only).
538
539 Thu Oct 6 19:25:31 1994 Robert Joop (rj@rainbow.in-berlin.de)
540
541 * c++_lib/*: virtual inline functions (the destructor and the
542 Clone() function) moved from inc/*.h to src/*.C because g++ turns
543 every one of them into a static non-inline function in every file
544 where the .h file gets included.
545
546 Wed Sep 28 12:17:50 1994 Robert Joop (rj@rainbow.in-berlin.de)
547
548 * c++_lib/inc/asn_buf.h: fixed both Copy()'s name and
549 implementation to CopyOut() that always returns the number of
550 bytes copied out instead of 0 in case less than the requested
551 amount is available.
552
553 Sat Sep 17 20:07:29 1994 Robert Joop (rj@rainbow.in-berlin.de)
554
555 * compiler/back_ends/c++_gen/gen_c++_code.c: reordered the
556 functions to get rid of their annoying declarations.
557
558 Wed Sep 14 00:59:36 1994 Robert Joop (rj@rainbow.in-berlin.de)
559
560 * the constructors should initialize all pointers or else the
561 destructor may delete bogus pointers.
562
563 * c_lib/inc/asn_list.h: is unwise to #define unbalanced if()s!
564
565 * since i was still irritated by cpp standing for c++ and not the
566 C preprocessor, i renamed them to cxx (which is one known suffix
567 for C++ source files). since the standard #define is __cplusplus,
568 cplusplus would have been the more obvious choice, but it is a
569 little too long.
570
571 * made Print() const (and some other, mainly comparison functions).
572
573 Thu Sep 1 01:11:17 1994 Robert Joop (rj@rainbow.in-berlin.de)
574
575 * compiler/core/snacc_config.h dissolved into mem.h and
576 snacc_util.h.
577
578 * the empty statement in a
579 for (...; ...; ...);
580 has often been overseen; the equivalent
581 for (...; ...; ...)
582 ;
583 has proven to be less error prone.
584
585 * off-topic: cvs and rcs fixed to recognize .C and .asn1 as
586 suffices for C++ and ASN.1 code, respectively.
587
588 Wed Aug 31 00:03:22 1994 Robert Joop (rj@rainbow.in-berlin.de)
589
590 * it is a good idea to have every .c file include its
591 corresponding .h file were its functions are declared, because
592 it's a very effictive way to let an ANSI compiler assert that
593 every function is defined with the same number and types of
594 arguments as it is declared with. proof: ParseValues() was
595 declared different than defined (different return type and
596 arguments reversed).
597
598 * for reasons unknown, the compiler files included two of the
599 various almost identical config.h files.
600
601 * compiler/back_ends/c++_gen/gen_c++_code.c: turned the huge
602 inline funtions into normal functions. (the change was actually
603 made by IBM ENC, but wasn't properly marked.) due to their size,
604 these inlines wouldn't get inlined anyway. due to their size they
605 wouldn't offer any speed advantage (the function call overhead
606 diminishes). instead, the compiler generated static functions in
607 every .C file were the .h file is included! this inflates the .o
608 files and executables real quick (i'm speaking of MBytes per
609 executable).
610
611 * integrating c{,++}_examples:
612 .../simple: test csh-script integrated into makefile.
613
614 Mon Aug 29 11:18:11 1994 Robert Joop (rj@rainbow.in-berlin.de)
615
616 * the dependencies have been moved into a separate file that is
617 not under cvs control. otherwise, the makefiles would inflate the
618 repository unnecessarily.
619
620 Sun Aug 28 11:18:23 1994 Robert Joop (rj@rainbow.in-berlin.de)
621
622 * config.h defines TRUE/FALSE for C only. for C++, the built-in
623 bool type accompanied by true/false is used. for C++ compilers
624 that don't have bool built-in, an equivalent enum is defined.
625
626 * merged .../tbl_{lib,include}/ with .../c_lib/. changes detected
627 were:
628 - asn_any.h present in c_lib only.
629 - asn_bits.c ...
630 - tbl_*/asn_len.[ch] has an additional function PeekEoc().
631 - tbl_include/asn_list.h has an additonal macro
632 FOR_REST_LIST_ELMT_RVS() and three additional functions,
633 GetAsnListElmtIndex(), AsnListFree() and GetAsnListElmt().
634 tbl_lib/asn_list.c defines only one additional function,
635 GetAsnListElmt().
636 - asn_oid.h has the same extension as the compiler version.
637 - asn_real.c: the tbl version at two places has
638 exponent >>= 8;
639 where the c_lib has
640 exponent >> 8;
641 since the latter is a statement without any effect, that's
642 probably the buggy version...
643 - tbl_*/asn_tag.[hc]: two additional macros, CONSIFY() and
644 DECONSIFY(), and an additional function, PeekTag().
645 - asn_useful.c: the c_lib version contains two dozen used
646 variables, so why not use the tbl version?
647 - exp_buf.h ...
648 - files only found in tbl_include: gen_buf.h,
649 tbl{,_dec,_enc,_free,_gen_c_hdr,_incl,_print,_util}.h.
650 - files only found in tbl_lib: gen_buf.c,
651 tbl{,_dec,_enc,_free,_print,_util}.c.
652 - sbuf.[hc]: tbl uses functions, c_lib defines cpp macros.
653
654 * modified the makefiles to include depend, install, clean and
655 clobber phony targets following the usual conventions.
656
657 * INSTALL, mkinstalldirs and install.sh copied from autoconf-1.11.
658
659 * 1.0-to-1.1-changes renamed to NEWS. README.changes that starts
660 with a line reading ``Changes between 1.0 and 1.1'' merged into NEWS.
661
662 * collected common code from compiler/core/snacc_config.h,
663 c_lib/inc/asn_config.h and c++_lib/inc/asn_config.h into config.h.bot.
664
665 * adding support for configuration via GNU autoconf:
666 - writing a configure.in, acconfig.h, makehead.in.
667 - replace a lot of macros in the makefiles with an inclusion of a
668 makehead file generated by configure. since file inclusion has
669 been a feature supported since UNIX System III, i consider it
670 pretty portable.
671
672 * first cvs import.
673
674 * inserting RCS keywords as a preparation for cvs import.
675
676 Sat Aug 27 11:59:08 1994 Robert Joop (rj@rainbow.in-berlin.de)
677
678 * fixed the developer's nightmare that for every tiny change,
679 virtually everything was remade.
680
681 * -DFLEX ain't necessary since flex defines FLEX_SCANNER already.
682
683 * renamed asn1.lex to lex-asn1.l and asn1.yacc to parse-asn1.y to
684 take advantage of make's default rules.
685
686 * collision of #define Free() in the compiler's mem.h and a member
687 called Free in c_lib's struct AnyInfo in asn_any.h resolved.
688
689 * changed the directory structure. the content of .../c_lib/ +
690 .../c_include/ was almost identical to that of .../src/c_lib/, so
691 i merged them. .../src/ isn't the only directory containing
692 source, so i renamed it to compiler. to sum it up:
693
694 old: new:
695 .../src/back_ends .../compiler/back_ends
696 .../src .../compiler/core
697 .../src/c_lib -> merged with .../c_{lib,include}
698 .../c_lib .../c_lib/src
699 .../c_include .../c_lib/inc
700 .../c++_lib .../c++_lib/src
701 .../c++_include .../c++_lib/inc
702
703 the differences found between .../src/c_lib/ and
704 .../c_{lib,include}/:
705 - Malloc()/Free() vs. NibbleAlloc()
706 - snacc_config.h partially copied to asn_config.h
707 - for the compiler, struct OID in asn_oid.h contains an additional
708 member.
709 - the functions AsnListConcat(), AsnListFree() and
710 GetAsnListElmtIndex() existed in the compiler version only.
711 the mixture of Asn1Alloc() in combination with Free() and free()
712 has been unified to using Asn1Free().
713
714 yet another almost identical copy of c_lib/ can be found in
715 .../tbl_{lib,include}/.
716
717 * since the code was quite inconsistent in respect of where lines
718 were broken (many short lines that unbroken are shorter than 72
719 columns were broken, and many long lines were broken into pieces
720 that were much longer than 80 columns), i took the liberty to
721 unify the layout.
722
723 * some international rules of typography:
724 - put a space before an opening parenthesis, and one after a
725 closing one.
726 - no space after an opening parenthesis, or before a closing one.
727 - no space before punctuation.
728 - one space after punctuation (in some countries two after a full
729 stop).
730
731 * a space somewhere between function name and first argument helps
732 to see that there are actually two words, not just one. for me,
733 AlongFunctionName(andanArgument, ...)
734 looks too much like
735 AlongFunctionNameCandanArgument, ...)
736 and thus i prefer
737 AlongFunctionName (andanArgument, ...)
738
739 * moved `*' and `&' from the type to the value. that's where C and
740 C++ bind them to! people are often mislead by this and generate
741 bugs like
742 char* p1, p2;
743 instead of
744 char *p1, *p2;
745 which they really meant. blame K&R, not me :-)
746
747 * removed trailing blank lines. they simply produce blank pages
748 when the file is printed out. some files had got a dozen of them!
749
750 * trailing white space removed. noted here because it might cause
751 problems when someone wants to integrate patches; but vi users
752 hate empty lines that aren't empty because of white space, since
753 it keeps some movement commands from working.
754
755 * one of IBM ENC's changes is the addition of C++ destructors.
756 this change was clearly marked and therefore i removed the
757 #defines.
758
759 * i took the official snacc-1.1 distribution and made a diff(1) to
760 another version modified by IBM ENC. this diff has been merged
761 with the official version using `patch -D _IBM_ENC_`.