and added files
[bcm963xx.git] / userapps / opensource / net-snmp / TODO
1 TODO list for the ucd-snmp-coders:
2
3   create our own source rpm spec file, independent from RedHat
4   possibly add WinSNMP wrappers around the ucd-snmp functions
5   Continue to add and improve manual pages/documentation.
6   More snmpset'able variables.
7   Should be able to set the fix script line in the .conf files per type.
8   Implement IP routing table manipulation using sysctl() on systems that
9     support the route socket (BSD 4.4 and IRIX >= 6.2)
10   Implement new IP forwarding table MIB (RFC 2096), at least on systems
11     that have classless routing tables internally
12   Implement IP/UDP/TCP statistics on IRIX 6.2 and later using
13     sysmp(MP_SAGET,MPSA_TCPIPSTAT,...) and <sys/tcpipstats.h>
14   Follow the evolution of the Interfaces Group MIB
15     (draft-ietf-ifmib-mib-05.txt) and implement what can be
16     implemented.
17   Make read_objid and sprint_objid agree on which shorthands they accept.
18   snmpset should check against MIB size if possible?
19   Remove unsuppored mib nodes from output instead of returning '0's.
20   Support for Counter64 in snmpdelta
21   API for traps that pass scripts can use.
22   Make memory/swap variables UInts instead of Ints.
23
24 ===================
25
26 Issues:
27
28         CODE-RELATED ISSUES
29         -------------------
30
31 Architecture-specific implementations:
32         How to handle differences between architectures
33            - overall common template
34            - "standard" implementation (with minor differences)
35            - architecture unique implementations
36         pre-processor #ifdefs or separate files
37
38 Function argument handling:
39         Function declaration prototypes
40         Function definition prototypes
41         How to handle both ANSI and K&R compilers
42
43 Threading
44         Single thread / multi-thread / event driven / asynchronous
45
46 Lookup design
47         Kernel digging vs "clean" interfaces (sysctl/ioctl)
48
49 Error Handling
50         Ensure all return values are checked for validity
51
52 Documented APIs
53
54 WinSNMP interface
55
56 Package name
57         UCD-snmp vs Net-snmp
58
59
60
61         FUNCTIONALITY-RELATED ISSUES
62         ----------------------------
63
64 Per-interface information
65         (speed/type/counters/non-ethernet address)
66
67 Multi-CPU support
68
69 Real Time O/S support
70
71 64-bit counters
72
73 Non-ethernet interface support
74         Address handling code tends to assume 6 octet
75         physical addresses and 4 octet transport addresses
76
77 Non-fully-qualified name output
78         (Probably covered now?)
79
80 Formatted dump
81         unpick the ASN encoding, rather than
82         simply dumping the bare data
83
84 Module interdependence
85
86
87
88         EXTENSIBILITY-RELATED ISSUES
89         ----------------------------
90
91 AgentX
92
93 SMUX
94
95 Dynamic loading of modules
96
97 "Intelligent" Agent
98         agent-initiated traps
99         threshold monitoring
100
101 PHP scripting
102
103 Extensible trapd
104
105
106
107         PERFORMANCE-RELATED ISSUES
108         --------------------------
109
110 Memory Leaks
111
112 Information caching
113         (e.g. Host Resources information)
114
115 Intelligent table handling
116         (i.e. not resetting internal state for each request)
117
118 Pre-compiled MIBs
119         to speed up MIB parsing
120
121 Duplicate requests
122         Currently these are processed afresh each time.
123         They should probably be either dropped or use cached replies
124
125 Security
126         Go through the library and apps and check all arrays and
127         buffers for overruns. There are a lot of unchecked ones.
128
129 ===================
130
131 Other Ideas:
132   Make the mib parser figure out which of the above files it needs to
133     load rather than loading them all -- Tom Georges & Joe Marzot
134
135 ===================
136
137 Want something done?  Have ideas?  Have code to submit?  Need
138 something earlier than it is listed above? Please!  
139                                            Write us!
140                                            net-snmp-coders@lists.sourceforge.net
141
142 (even if just to announce that you are going to be working on it so we 
143 can avoid multiple people working on the same thing)