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
|
Wed Aug 20 15:11:23 1997 Mike MacFaden <mrm@tango.cs.wustl.edu>
* rebuilt Makefile using g++dep
* pdu.h pdu.cpp initialization errors fixed
* address.h address.cpp IpAddress::to_octet() added
Fri Aug 1 19:23:52 1997 Mike MacFaden (mrm@mrm-ss20)
* NOTES: This first version only tested on Solaris 2.5
* review classes for thread safety. Current thread design only
allows for one thread to safely access any ASNMP object created.
* run purify test of get routine no -memory leaks.
* verify both shared archive/static archive types work with
example programs
* << Globals Changes >>
* tested only archiver library version
* reformat code to use one brace style.
* changed all manifest constants defined as _XX to XX_ to stay out
of compiler namespace
* change all OS calls to use ACE_OS:: portability layer, #include
<ace/OS.h>
* reformat code to use one consistent brace layout and redo
header using ACE
* remove semicolons on member functions foo{}; - not necessary
* make get() methods const member functions
* removed unnecessary casts that looked like this: and revamped
all memory allocations via ACE_NEW macro
new_oid = (SmiLPUINT32) new unsigned long [ smival.value.oid.len
To
ACE_NEW(new_oid, SmiUINT32[ smival.value.oid.len])
* Collapsed default constructors with constructors to constructors
with default arguments.
* removed unused #include <iostream.h>
* Added ACE_TRACE() to classes
* change get_printable() to to_string() - there will be more java
programmers in the future so this should be the first step...
* removed ASYNC interface till it can be rebuilt using ACE patterns
* Attempt to make interface more type strict but leaving generic
interfaces as escape hatch. Example: CTarget becomes UdpTarget
for UDP/IP based agents.
* << Class Specific Changes >>
* Oid class:
- remove char * routines, simplify class
- added suboid method and removed get_printable() overloads
* CTarget class:
- renamed to UdpTarget. Stay out of Microsoft Namespace per MSJ
Article by Allen Hollub.
* Varbind class:
- remove generic set_value for char,int, etc. Too easy to get
this wrong. Allow just types defined.
- added overload for equality operator (==)
- added new constructor to allow setting full vb state oid,value, exception
- add to_string()
* Address class:
- change manifest constants to enums for address lengths, add IP V6 lens
- add a netbios name class, still pretty worthless since I don't have spec
in front of me yet...
- rewrite resolver calls to be thread safe and cleaner by moving to two
class (static) member functions:
// thread safe routine to lookup ip address given hostname
// return <> 0 on error
static int resolve_to_addr(const char *hostname, in_addr& quad_addr);
// thread safe routine to lookup name given ip address
// return <> 0 on error
static int resolve_to_hostname(const in_addr& quad_addr, char *hostname)
* added some interrogation routines to class IpAddress:
is_loopback() const;
* Ctr64 class:
- added constructor using long long datatype (needs to be made
portable to NT
* Pdu class: add to_string()
* Classes added wpdu class:
- a new adpater class between CMU and HP pdu, varbind data structures
* transaction class:
- implement get/getnext timeout and retry logic using ACE
Reactor class, ACE_Time_Value
|