1Mon Apr 14 14:15:00 2008  Ryan Koga  <rkoga@caida.org>
2
3	* apps/artsagg/artsagg.cc apps/artsases/artsases.cc
4	  apps/artsdump/artsdump.cc apps/artsintfms/artsintfms.cc
5	  apps/artsnets/artsnets.cc apps/artsnexthops/artsnexthops.cc
6	  apps/artsportagg/artsportagg.cc apps/artsportms/artsportms.cc
7	  apps/artsports/artsports.cc apps/artsprotos/artsprotos.cc
8	  apps/artstoc/artstoc.cc apps/artstos/artstos.cc
9	  classes/include/ArtsCflowdCustomData.hh
10	  classes/include/ArtsHeader.hh
11	  classes/include/ArtsPortMatrixAggregator.hh
12	  classes/include/ArtsSelectedPortTable.hh
13	  classes/src/ArtsAttribute.cc classes/src/ArtsBitString.cc
14	  classes/src/ArtsFileUtil.cc classes/src/ArtsHeader.cc
15	  classes/src/ArtsTimeIntervalSelectionSet.lex
16
17	* tagged as arts++-1-1-a13
18
19	Fixed compilation errors with recent GCC (4.3):
20	Added proper headers for memset(), memcpy(), strdup(), strtok(),
21	    strerror(), strlen(), free() and calloc()
22	Removed incorrect class scope specification within class definitions.
23
24Fri Sep  8 16:01:00 2006  Young Hyun  <youngh@caida.org>
25
26	* tagged as arts++-1-1-a12
27
28	Updated config.guess, config.sub, install-sh, ltconfig, and ltmain.sh.
29
30Tue Dec 14 02:23:08 2004  Ken Keys  <kkeys@caida.org>
31
32	* ported to g++ 3.4
33
34Fri Oct 22 18:26:27 2004  Ryan Koga  <rkoga@caida.org>
35
36	* Fixed (without testing) write functions that use file descriptors.
37
38Wed Jun 23 10:15:00 2004  Young Hyun  <youngh@caida.org>
39
40	* tagged as arts++-1-1-a11
41
42	Added list ID and cycle ID to ArtsIpPath and ArtsIpPathData classes.
43	Applied patch (submitted by "Philippe Raoult" <phir@gcu.info>) to
44	allow compilation with gcc 3.3.3 on Debian 20040422.
45
46Wed Apr 21 23:51:30 2004  Ken Keys  <kkeys@caida.org>
47
48	* tagged as port-gcc3
49
50	Ported to g++ 3.2 with its stricter following of ISO/IEC 14882:1998,
51	but retained compatiblity with g++ 2.95.
52
53Wed Jan  7 16:01:21 2004  Ryan Koga  <rkoga@caida.org>
54
55	* tagged as arts++-1-1-a9
56
57Thu Jun  6 18:52:00 2003  Ryan Koga  <rkoga@caida.org>
58
59	* Changed Makefiles to work with non-GNU make.
60
61Fri May 30 23:42:39 2003  Ryan Koga  <rkoga@caida.org>
62
63	* classes/src/ArtsIpPathData.cc
64
65	Fixed mistaken output for RTT >= 1 second.
66
67Thu May 29 05:42:57 2003  Ryan Koga  <rkoga@caida.org>
68
69	* classes/include/ArtsIpPath.hh
70	  classes/include/ArtsIpPathData.hh
71	  classes/include/ArtsIpPathEntry.hh
72	  classes/src/Arts.cc
73	  classes/src/ArtsIpPathData.cc
74	  classes/src/ArtsIpPathEntry.cc
75
76	Made Rtt() return an actual timeval struct, instead of a reference.
77	Changed read()/write() on some objects to pass flags around in
78	    addition to version.
79	Changed internal rtt representation to 4 bytes instead of the 8 of
80	    a timeval.
81	Changed output format of rtts for ArtsIpPathData to use 4 bytes
82	    instead of 8.
83	rtts are now stored only in microseconds.
84	Added ArtsIpPathEntry::k_rtt as a flag for determining whether or
85	    not to output intermediate rtts.
86
87Mon Apr 28 20:02:54 2003  Ryan Koga  <rkoga@caida.org>
88
89	* classes/include/ArtsIpPathData.hh
90	  classes/src/ArtsHeader.cc
91	  classes/src/ArtsIpPathData.cc
92	  classes/src/ArtsIpPathEntry.cc
93
94	Changed IsComplete() to DestinationReached()
95	Changed IncompleteReason() to HaltReason()
96	Changed TtlLimit() to GapLimit()
97	Added IcmpCode()
98	Added ReplyTtl() (and extra field to store it)
99	Adjusted read/write/output functions to support changes.
100	Fixed output of hex IP addresses to be always in host order.
101
102Sat Jan  4 00:57:31 2003  Ken Keys  <kkeys@caida.org>
103
104	* classes/include/Ipv4PrefixPatricia.hh.in
105
106	Completely rewritten:
107	    - Correctly allows insertion of nesting prefixes, with no
108	      requirement that more specific prefixes are inserted after
109	      less specific prefixes.
110	    - all iterators can be incremented and decremented
111	    - code size is about 1/3 of previous implementation
112
113Thu Nov 21 21:44:17 2002  Anukool Lakhina  <anukool@caida.org>
114
115	* classes/include/ArtsIpPath.hh
116	  classes/include/ArtsIpPathData.hh
117	  classes/src/ArtsIpPathData.cc
118
119	Added support for numTries.
120
121Thu Nov 16 11:22:46 2000  Daniel W. McRobb  <dwm@axle.caimis.com>
122
123	* tagged as arts++-1-1-a8
124
125Thu Oct 19 15:03:08 2000  Daniel W. McRobb  <dwm@axle.caimis.com>
126
127	* classes/src/Arts.cc
128
129	Made 'operator =' properly clear memory.  It had a memory leak.
130
131	* classes/src/ArtsRttTimeSeriesTableData.cc
132
133	Clear data before reading from an istream.
134
135Mon Oct  2 11:22:46 2000  Daniel W. McRobb  <dwm@axle.caimis.com>
136
137	* tagged as arts++-1-1-a7
138
139Sat Sep 23 11:31:19 2000  Daniel W. McRobb  <dwm@axle.caimis.com>
140
141	* classes/src/ArtsRttTimeSeriesTableData.cc
142
143	Implemented read() and write() members for file descriptors.
144
145	* classes/src/ArtsPrimitive.cc
146
147	Fixed reading of 3-byte values in:
148	  WriteUint32(int,const uint32_t & value, uint8_t len)
149  	We were not correctly returning 3 on success.
150
151Fri Aug 18 13:29:00 2000  Daniel W. McRobb  <dwm@lancelet.caida.org>
152
153	* classes/include/ArtsIpPathData.hh
154	  classes/src/ArtsIpPathData.cc
155
156	Added rtt argument to AddHop() member of ArtsIpPathData class.
157
158Mon Aug 14 15:23:05 2000  Daniel W. McRobb  <dwm@lancelet.caida.org>
159
160	* classes/include/ArtsIpPathData.hh
161	  classes/src/ArtsIpPathData.cc
162
163	Added flags for incomplete paths to ArtsIpPathData object (to support
164	version 1 data).  Version 1 of this object is now experimental.
165
166	* classes/include/ArtsIpPathEntry.hh
167	  classes/src/ArtsIpPathEntry.cc
168
169	Added new version of ArtsIpPathEntry.  Includes support for
170 	per-hop RTT and the number of tries the poller needed to invoke a
171 	response from each hop.
172
173Tue May 23 15:07:26 2000  Daniel W. McRobb  <dwm@lancelet.caida.org>
174
175	* tagged as arts++-1-1-a6
176
177Sun Feb 27 14:38:53 2000  Daniel W. McRobb  <dwm@caida.org>
178
179	* Added '-l topN' command-line option to 'artsportmagg'.  This
180 	option causes 'artsportmagg' to generate selected port table
181 	objects for the topN ports by bytes of traffic.  This is now
182	the most useful type of port_matrix -> selected_port_table
183	aggregation.
184
185Sun Jan  9 00:08:53 2000  Daniel W. McRobb  <dwm@lancelet.caida.org>
186
187	* tagged as arts++-1-1-a5
188
189	* classes/src/Makefile.in
190	Fixed tarball target.
191
192Mon Nov 22 15:08:19 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
193
194	* tagged as arts++-1-1-a4
195
196Tue Nov  9 18:42:47 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
197
198	* We can now build and use a shared version of the arts++ library.
199	This is enabled with the '--enable-shared' argument to configure.
200	If you want a lean and mean version of arts++, you can use:
201
202  	  env CXXFLAGS=-O3 ./configure --enable-shared --disable-static
203	  make
204
205Mon Oct 18 14:50:04 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
206
207	* tagged as arts++-1-1-a3
208
209	* apps/artsintfms/artsintfms.cc
210	  apps/artsnets/artsnets.cc
211	  apps/artsnets/artsnets.man
212	  apps/artsnexthops/artsnexthops.cc
213	  apps/artsnexthops/artsnexthops.man
214	  apps/artsportms/artsportms.cc
215	  apps/artsportms/artsportms.man
216	  apps/artsports/artsports.cc
217	  apps/artsports/artsports.man
218	  apps/artsprotos/artsprotos.cc
219	  apps/artsprotos/artsprotos.man
220	  apps/artstos/artstos.cc
221	  apps/artstos/artstos.man
222	  apps/artstoc/artstoc.cc
223	  apps/artstoc/artstoc.man
224
225	Added '-b beginTime' and '-e endTime' options.
226
227Thu Oct  7 04:17:39 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
228
229	* Fixed initialization of _sampleInterval in those classes which
230 	were setting it to zero in the constructor.  We now use a
231 	_sampleInterval of 1 (as originally intended) in the default
232	constructors.
233
234	* Added setting of TotalBytes() and TotalPkts() in objects
235	created by conversion functions in Arts*Aggregator classes.
236
237Fri Sep  3 06:10:08 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
238
239	* apps/artsases/artsases.cc
240	Added '-b beginTime' and '-e endTime' options.
241
242	* Added time interval selection code to ArtsFileUtil class.
243
244Thu Sep  2 06:45:57 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
245
246	* tagged as arts++-1-1-a2
247
248	* classes/src/ArtsIfIndexSelectionSet.lex
249	  classes/src/ArtsObjectTypeSelectionSet.lex
250
251	Use <strstream> in place of <strstream.h> only if HAVE_STRSTREAM
252 	is defined.
253
254	* classes/include/Ipv4PrefixPatricia.hh.in
255
256	Added operator * that works on const iterators.
257
258	* classes/include/ArtsSelectionSet.hh
259
260	Fixed operator ==
261
262	Lord only knows how gcc-2.95 let this one get by; portChooser
263 	wasn't declared anywhere, and there were non-const calls against
264 	const objects.
265
266Mon Aug 30 20:11:50 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
267
268	* tagged as arts++-1-1-a1
269
270	It's been a long time since a public release, so here's a quick
271	list of changes.
272
273	We can now combine data across interfaces using 'artsagg', select
274 	only data from particular interfaces to be aggregated, and select
275 	particular object types to be aggregated from 'artsagg'.  This
276 	makes 'artsagg' the Swiss army knife of aggregation, and we should
277 	probably deprecate the other aggregation utilities.  However, the
278 	other aggregation utilities are still around and have been updated
279 	with interface selection and combination functionality.
280
281	All of the arts++ display utilities for cflowd data (artaases,
282 	artsnets, et. al.) now include the ability to select data by
283 	interface index.  See the manpages.  Some of them also permit only
284 	showing the top N entries in each selected object (useful for
285 	large objects like the net matrix), using the '-l maxEntries'
286 	command line option (feature requested by several, '-l' naming
287 	came from Paul Howell at Merit).  Again, see the manpages.
288
289	I fixed the aggregation code to correctly aggregate each
290 	individual object.  This fixes a bug where we aggregated objects
291 	for the same interface (ifIndex) too early because we weren't
292 	loking at each object's timestamp but were instead aggregating a
293 	whole aggregator map when we got the first object of a given type
294 	whose timestamp was beyond the aggregation interval (if anyone but
295 	Daniel can understand that sentence...).  This was reported by
296 	Christian B. Wiik on the cflowd mailing list on August 19, 1999
297 	but we were already aware of it.
298
299	A TOS table object now exists, and aggregation is supported (in
300 	the library and 'artsagg').  'artstos' is the simple TOS display
301 	program.
302
303	'artstoc' now skips the data portion of objects, making it
304 	considerably faster in most cases (reading the contents of net
305 	matrix and port matrix objects can be very expensive when we're
306 	not even going to look at the data ;-)).
307
308	cflowd data objects may now contain two new attributes:
309
310	  - interface description
311	  - interface IP address
312
313	These are shown by the display utilities if present.  They
314 	correspond to the name and IP address of the interface from which
315 	the data was collected.  cflowd uses SNMP to retrieve these
316 	values.
317
318	I've fleshed out Bgp4 classes, and they're now implemented (but
319 	not fully tested).  CAIDA members-only code is using these classes
320 	to store and process BGP4 Adj-RIB-In dumps from mrtd (and soon a
321 	CAIDA bgp4 speaker that will work directly with the Arts Bgp4
322 	classes).  The Patricia template code is still a bit scary at the
323 	moment, so I wouldn't recommend using it yet (there are some
324 	undocumented gotchas).
325
326	We now have RTT time series classes.  These are used by CAIDA
327 	members-only programs like 'skping'.
328
329
330Thu Aug 26 04:52:12 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
331
332	* Committed tweaks to aggregation code.  We can now combine data
333 	across interfaces using 'artsagg', select only data from
334 	particular interfaces to be aggregated, and select particular
335 	object types to be aggregated from 'artsagg'.  This makes
336 	'artsagg' the Swiss army knife of aggregation, and we should
337 	probably deprecate the other aggregation utilities.
338
339Fri Aug 20 01:48:44 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
340
341	* ArtsPortChooser.cc replaced by ArtsPortChooser.lex, since I
342	put the port list lexer in (and removed the lexer code from
343	the apps/artsportmagg/ directory).
344
345	* Cleaned up aggregation code, moving functionality from aggregation
346	utilities into the arts++ library.  'artsagg' will now accept
347	'-s portlist' argument just like 'artsportmagg', since 'artsagg'
348	may have to deal with port matrices in input.  This also means
349	that some ArtsFileUtil member functions now have an ArtsPortChooser
350	argument they didn't have before.
351
352	* Fixed aggregation to correctly aggregate each individual object.
353  	This fixes a bug where we aggregated objects for the same
354 	interface too early because we weren't loking at each object's
355 	timestamp but were instead aggregating a whole aggregator map when
356 	we got the first object of a given type whose timestamp was beyond
357 	the aggregation interval.
358
359Tue Aug 17 22:01:55 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
360
361	* Now using '#ifndef NDEBUG' instead of '#ifdef
362 	ARTS_DEBUG_CLASS_ALLOC'.  This means debugging support will be
363 	compiled in by default.  It can be disabled using the
364 	'--disable-debug' option of configure.  I've also eliminated the
365 	separate debugging target in classes/src/Makefile.in, since it
366 	wasn't seeing much use and it's easier to just have the debugging
367 	code in the normal library target (it's not heavy code).
368
369Wed Aug 11 11:48:55 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
370
371	* Cleaned up for gcc-2.95.  Minor tweaks to meet parts of C++
372 	standard (yes, there is a C++ standard now).  Unfortunately I
373 	haven't yet moved to a fully standard-compliant implementation,
374 	because I have to retain support for older compilers (for example,
375 	the old header file naming conventions and things like strstream).
376
377Fri Apr 30 03:24:35 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
378
379	* Added aggregation support for TOS object in library and in
380	'artsagg'.  Added 'artstos' program.
381
382	* Added TOS table object for tracking traffic for each IP TOS
383	value (will be used by cflowd system).
384
385Mon Apr 12 00:15:43 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
386
387	* configure
388	  configure.in
389	  classes/include/ArtsAsMatrixData.hh
390	  classes/include/ArtsAsMatrixEntry.hh
391	  classes/include/ArtsHeader.hh
392	  classes/include/ArtsInterfaceMatrixData.hh
393	  classes/include/ArtsInterfaceMatrixEntry.hh
394	  classes/include/ArtsIpPathEntry.hh
395	  classes/include/ArtsNetMatrixEntry.hh
396	  classes/include/ArtsNextHopTableEntry.hh
397	  classes/include/ArtsPortMatrixData.hh
398	  classes/include/ArtsPortMatrixEntry.hh
399	  classes/include/ArtsPortTableEntry.hh
400	  classes/include/ArtsProtocolTableEntry.hh
401	  classes/include/ArtsSelectedPortTableEntry.hh
402	  classes/include/artslocal.h.in
403	  classes/include/caida_t.h.in
404	  classes/src/ArtsAsMatrixAggregatorMap.cc
405	  classes/src/ArtsBgp4AsPathSegment.cc
406	  classes/src/ArtsInterfaceMatrixAggregatorMap.cc
407	  classes/src/ArtsIpPath.cc classes/src/ArtsIpPathData.cc
408	  classes/src/ArtsNetMatrixAggregatorMap.cc
409	  classes/src/ArtsNetMatrixData.cc
410	  classes/src/ArtsNextHopTableAggregatorMap.cc
411	  classes/src/ArtsNextHopTableData.cc
412	  classes/src/ArtsPortChooser.cc
413	  classes/src/ArtsPortMatrixAggregatorMap.cc
414	  classes/src/ArtsPortTableData.cc
415	  classes/src/ArtsProtocolTableAggregatorMap.cc
416	  classes/src/ArtsProtocolTableData.cc
417	  classes/src/ArtsRttTimeSeriesTableData.cc
418	  classes/src/ArtsSelectedPortTableData.cc
419
420	Now moving toward using ISO/IEC 14882:1998 header file names for
421	Standard C++ Library headers.  Unfortunately not all compilers are
422	current, so I fall back to the old GNU names when I don't find the
423	headers under their standard names.  I do this by setting macros
424 	in classes/include/artslocal.h and conditionals in source files
425 	which use the macros.  Eventually we should be able to get rid of
426 	classes/include/artslocal.h and remove the conditional gunk in our
427 	source (and just use the standard named).  Some day...  :-)
428
429	Also committed some fixes in checking for fixed-width integer types,
430	including now checking for <inttypes.h>
431
432	* apps/artsases/artsases.cc
433	  apps/artsintfms/artsintfms.cc
434	  apps/artsnets/artsnets.cc
435	  apps/artsnexthops/artsnexthops.cc
436	  apps/artsportms/artsportms.cc
437	  apps/artsprotos/artsprotos.cc
438
439	Now using istream_iterator to step through input files.
440
441Sun Apr 11 23:21:40 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
442
443	* Added 'istream & operator >> (istream &, ArtsFoo &)' for each
444 	first-level descendant of the Arts class.  This allows us to walk
445 	through an istream with an istream_iterator<ArtsFoo> and only get
446 	a particular type of object (our operator skips over other types
447	of objects).
448
449	* Added public copy constructor for Arts class.  This trickles
450 	down to first-level descendants of the Arts class.  This was added
451	mostly to handle those parts of STL which use the copy constructor.
452
453	* Added DeleteData() and DeleteAttributes() to Arts class.  This
454	makes it easier to do cleanup in various places (like the read()
455	member functions).
456
457	* Fleshed out Bgp4 classes, and they're now implemented (but not
458	fully tested).  CAIDA members-only code is using these classes
459	to store and process BGP4 Adj-RIB-In dumps from mrtd (and soon
460	a CAIDA bgp4 speaker that will work directly with the Arts Bgp4
461	classes).
462
463	* Added RTT time series classes.  These are used by CAIDA
464	members-only programs like skping.
465
466Sun Mar 21 18:45:24 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
467
468	* apps/artsprotos/artsprotos.cc
469	  apps/artsprotos/artsprotos.man
470	  apps/artsports/artsports.cc
471	  apps/artsports/artsports.man
472	  apps/artsportms/artsportms.cc
473	  apps/artsportms/artsportms.man
474	  apps/artsnexthops/artsnexthops.cc
475	  apps/artsnexthops/artsnexthops.man
476	  apps/artsases/artsases.cc
477	  apps/artsases/artsases.man
478	  apps/artsnets/artsnets.cc
479	  apps/artsnets/artsnets.man
480	  apps/artsintfms/artsintfms.cc
481	  apps/artsintfms/artsintfms.man
482
483	Added '-i ifIndex' command-line option for selecting data for a
484	specific inpute interface.
485
486	Note: in the case of 'artsintfms', this is the same as the '-s
487 	srcIntf' option, but checks the interface index attribute instead
488 	of the actual interface matrix entries.
489
490Tue Feb  9 02:03:20 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
491
492	* tagged as arts++-0-9-b6
493
494	* apps/artsports/artsports.cc
495	  apps/artsports/artsports.man
496
497	Added service name lookups for port numbers, and we now print
498	them instead of the port numbers (unless the -n command line
499	option is used, in which case we always print only the port
500	numbers).
501
502Sun Feb  7 16:51:08 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
503
504	* apps/artsases/artsases.cc
505	  apps/artsases/AsTrafficTotal.hh
506	  apps/artsases/artsases.man
507	  apps/artsases/Makefile.in
508
509	Added '-t AS' option to 'artsases' to show only total traffic
510 	to/from a particular AS.  Also added -r option to show rates
511 	instead of totals when using the '-t AS' option.
512
513Mon Jan 25 03:40:37 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
514
515	* Added skeleton work for FreeBSD ports packaging.  Hopefully I'll
516 	have this submitted before the FreeBSD 3.1-RELEASE cut (scheduled
517 	for mid-February 1999).
518
519	* Added top-level 'debug' target which builds debugging library
520 	and applications.  Note this is really intended for me (dwm) only;
521 	the 'install' target will strip out symbols but you'll still have
522 	reference counting if you used the 'debug' target.
523
524	* Tested with egcs 1.1.1 on FreeBSD 3.0.  Compiles and runs fine.
525
526	* Added more reference counting code for debugging.
527
528Sun Jan 24 15:17:27 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
529
530	* strip binaries before installing them, to save disk space.
531
532Sat Jan 23 05:16:02 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
533
534	* Added 'asagg' program to aggregate all cflowd data in a
535	single pass.
536
537	* Started converting silly allocation debugging code to
538	reference counting in class library.  Note done yet.
539
540Fri Jan 22 00:20:52 1999  Daniel W. McRobb  <dwm@lancelet.caida.org>
541
542	* apps/artsprotos/artsprotos.cc
543	apps/artsprotos/artsprotos.man
544
545	Print protocol names instead of protocol numbers, unless
546	-n command line option is used.
547
548Wed Dec 23 00:16:40 1998  Daniel McRobb  <dwm@lancelet.caida.org>
549
550	* Now using config.guess/config.sub to set OSNAME and to handle
551 	OS-dependent stuff in configure (using AC_CANONICAL_SYSTEM).  A
552 	side-effect here is that the 'tarball' target now uses a different
553 	filename.  The new tarball target contains the CPU type and OS
554 	name.  Note that this means we now use 'solaris2.x' instead of
555 	'SunOS_5.x'; this may be good or bad depending on your
556 	perspective.  Note I'm still not using the full 'host' variable
557 	from AC_CANONICAL_SYSTEM; this may or may not change in the
558 	future.  I'm currently using ${host_cpu}-${host_os} in the tarball
559 	output filename.
560
561Tue Dec 22 14:38:13 1998  Daniel McRobb  <dwm@lancelet.caida.org>
562
563	* tagged as arts++-0-9-b5
564
565	* apps/artsportmagg/Makefile.in
566	Added lex.yy.c to 'clean' target.  Now using @FLEXINC@ and
567 	@FLEXLIB@ for flex include and library, respectively.
568
569	* configure, configure.in
570	Now setting FLEXINC and FLEXLIB (and substituting for them).
571  	Currently only used in apps/artsportmagg/Makefile.in
572
573Fri Dec 18 17:24:19 1998  Daniel McRobb  <dwm@lancelet.caida.org>
574
575	* classes/src/Arts.cc
576	Added initialization of _data._interfaceMatrix and
577 	_data._nextHopTable in Arts constructor.
578
579Mon Dec 14 07:06:46 1998  Daniel McRobb  <dwm@lancelet.caida.org>
580
581	* tagged as arts++-0-9-b4
582
583Sat Dec 12 06:18:32 1998  Daniel McRobb  <dwm@lancelet.caida.org>
584
585	* Whoops... removed scoping in IdentifierName() member prototype
586 	in classes/include/ArtsHeader.hh (accidental cut-and-paste from
587 	ArtsHeader.cc).
588
589Fri Dec 11 13:31:04 1998  Daniel McRobb  <dwm@lancelet.caida.org>
590
591	* tagged as arts++-0-9-b3
592
593	* Added ArtsHeader::IdentifierName() member.  artstoc now uses it.
594
595Wed Dec  9 01:35:12 1998  Daniel McRobb  <dwm@lancelet.caida.org>
596
597	* tagged as arts++-0-9-b2
598
599	* Added blurb about environment settings (PATH and MANPATH) in
600	INSTALL.  We also spit out a reminder for these settings when
601 	'make install' has completed.
602
603	* Fixed install targets in classes/include/Makefile.in
604	and classes/src/Makefile.in.  There was a problem when @includedir@
605	didn't exist.
606
607Mon Dec  7 02:49:15 1998  Daniel McRobb  <dwm@lancelet.caida.org>
608
609	* tagged as arts++-0-9-b1
610
611Sun Dec  6 08:20:46 1998  Daniel McRobb  <dwm@lancelet.caida.org>
612
613	* Added simple 'artsintfmagg' program.
614
615	* Added simple 'artsintfms' program.
616
617	* Added simple 'artsnexthopagg' program.
618
619	* Added simple 'artsnexthops' program.
620
621	* Added aggregator classes for interface matrix and nexthop table
622 	data.
623
624	* Added nexthop table to class library.  This is intended
625	to hold traffic data for each IP nexthop from a router.  Each
626	cell contains packets and bytes sent to an IP nexthop, and
627	is associated with the IP address of the nexthop.
628
629Thu Dec  3 16:21:17 1998  Daniel McRobb  <dwm@lancelet.caida.org>
630
631	* Added interface matrix object to class library.  This is
632	intended to hold traffic data for a router's interfaces:
633	each cell contains packets and bytes sent from an input
634	interface to an output interface.
635
636Mon Nov  9 12:30:36 1998  Daniel McRobb  <dwm@lancelet.caida.org>
637
638	* tagged as arts++-0-9-a11
639
640	* Fixed configure script checks for integer types in
641	<machine/types.h> and <sys/types.h>.  The only right way
642	to check for this is with AC_TRY_COMPILE() in configure.in.
643
644Fri Oct 30 22:53:53 1998  Daniel McRobb  <dwm@lancelet.caida.org>
645
646	* tagged as arts++-0-9-a10
647
648	* Fixed TopSourcesByBytes() and TopDestinationsByBytes() in
649	ArtsAsMatrixAggregator class.  I now always return a vector
650	whose size is the smaller of the caller's passed in size and
651	the actual number of ASes in the data.
652
653Wed Oct 21 02:30:15 1998  Daniel McRobb  <dwm@lancelet.caida.org>
654
655	* tagged as arts++-0-9-a9
656
657	* Added ArtsNetMatrixAggregatorMap, ArtsPortMatrixAggregatorMap
658 	and ArtsProtocolTableAggregatorMap classes.  These are just like
659 	the ArtsAsMatrixAggregatorMap for the corresponding aggregator
660 	classes (ArtsNetMatrixAggregator, ArtsPortMatrixAggregator and
661 	ArtsProtocolTableAggregator, respectively).
662
663	* Added ArtsAsMatrixAggregatorMap class, which is an STL <map>
664 	with an ArtsAsMatrixAggregatorMapKey class as the key and an
665 	ArtsAsMatrixAggregator as the value.  'artsasagg' now uses
666	this class (really no different than what is was already doing,
667	just makes the code a tad bit cleaner).
668
669	* Added Attributes() member to ArtsAsMatrixAggregator class.
670
671Thu Oct 15 00:42:08 1998  Daniel McRobb  <dwm@lancelet.caida.org>
672
673	* Added initial primitive support for reading/writing floats and
674 	doubles in the ArtsPrimitive class.  This required some ugliness
675 	in configure and a scary C macro rewrite to deal with a broken
676 	xdr_destroy() macro in <rpc/xdr.h> on FreeBSD 2.x systems.  We
677 	only rewrite the xdr_destroy() macro on FreeBSD 2.x systems, and
678 	then only if compiling a tiny program w/o our rewrite doesn't work
679 	(the compile check is in DWM_XDR_DESTROY_MACRO_DONT_PASS_POINTER
680 	in dwm.m4).
681
682	* tagged as arts++-0-9-a8
683
684	* Sigh, fixed sed command in DWM_SET_VERSION (again).  Lord
685	how I wish sed was portable...
686
687Wed Oct 14 16:07:05 1998  Daniel McRobb  <dwm@lancelet.caida.org>
688
689	* tagged as arts++-0-9-a7
690
691	* Fixed sed command in DMW_SET_VERSION in dwm.m4.
692
693	* Fixed tar command in apps/artsports/Makefile.in
694
695	* Added 'touch @PKG_VERSION@.@OSNAME@_@OSRELEASE@.tar' to tarball
696 	rule in top-level Makefile.in, before adding files to the tarball.
697  	Some versions of tar don't like 'tar -rvf foo bar' if foo doesn't
698 	already exist, so we force it to exist (but be empty since we
699 	remove it before touching it).
700
701	* tagged as arts++-0-9-a6
702
703	* Added setting of @TAR@ in configure, so that we can add '-P' to
704 	the tar command on platforms with GNU tar.  This is silly
705 	hardcoding at the moment, but it's only used for 'make tarball'
706 	(after 'make install').
707
708	* tagged as arts++-0-9-a5
709
710	* Added @OSRELEASE@ to name of output file for 'tarball'
711	target.
712
713Tue Oct 13 22:15:35 1998  Daniel McRobb  <dwm@lancelet.caida.org>
714
715	* Added tarball target to be used post-install.  It tars up
716	the installed files so you can use it to install binaries
717	on another host of the same flavor.
718
719Tue Oct 13 15:06:35 1998  Daniel McRobb  <dwm@lancelet.caida.org>
720
721	* tagging as arts++-0-9-a4
722
723	* Added ArtsPackageVersion class for simple version stuff based on
724 	CVS Name and Id tags.  Added -v command-line option to utilities
725	(which uses the ArtsPackageVersion class).  Added better
726 	command-line checking to utilities.
727
728Fri Oct  9 00:17:33 1998  Daniel McRobb  <dwm@lancelet.caida.org>
729
730	* Added code to 'artsports' to show total packets and bytes (sum
731 	of in and out) for each port, which also shows the total rates
732	(packets/sec and bits/sec).
733
734Thu Oct  8 01:23:19 1998  Daniel McRobb  <dwm@lancelet.caida.org>
735
736	* tagging as arts++-0-9-a3
737
738	* Added code to 'artsports' to handle ArtsSelectedPortTable
739	objects in addition to ArtsPortTable objects.
740
741	* Added functionality to 'artsportmagg' that permits generation
742	of ArtsSelectedPortTable objects in the output instead of
743	ArtsPortMatrix objects.  This is available via the '-s portlist'
744	command-line option (see the artsportmagg manpage).
745
746	* Added member to ArtsPortMatrixAggregator class that will return
747 	a pointer to an allocated ArtsSelectedPortTable object that is
748 	generated from the ArtsPortMatrixAggregator data and a passed-in
749 	ArtsPortChooser object.  This new member of the
750 	ArtsPortMatrixAggregator class is called
751 	ConvertToArtsSelectedPortTable().  This allows the class user
752	to boil ArtsPortMatrix data down to ArtsSelectedPortTable data
753	in a configurable manner.
754
755	* Added ArtsSelectedPortTable class, which is like a shortened
756 	ArtsPortTable class: data is kept only for selected ports, with
757 	all 'other' ports lumped under an entry for port 0.  This type
758 	of object is usually generated from ArtsPortMatrix data.
759
760	* Added ArtsPortChoice and ArtsPortChooser classes, which
761	are support classes to be used later for reducing port
762	matrices to port tables.
763
764	* Added SetAll() and UnsetAll() to ArtsBitString class.
765
766	* Added initialization of this->_data._portMatrix to NULL in
767 	Arts constructor.  The destructor depends on it; without it
768	we will get calls to the ArtsPortMatrixData destructor on
769	uninitialized ArtsPortMatrixData pointers.
770
771Wed Oct  7 19:58:39 1998  Daniel McRobb  <dwm@lancelet.caida.org>
772
773	* Added ArtsBitString class, which is currently just a convenient
774	bitstring class (it currently has no read/write functions and
775	is not part of the Arts class heirarchy).
776
777