]> git.decadent.org.uk Git - ap-utils.git/blob - ChangeLog
Imported Upstream version 1.5.1~pre3
[ap-utils.git] / ChangeLog
1 2006-03-29 Taco Witte
2         * configure.in: version 1.5.1pre3
3
4 2006-03-29 Taco Witte
5         * po/nl.po: Dutch translation updated
6
7 2006-03-29 Daniel Nylander
8         * po/sv.po: Swedish translation added
9
10 2005-11-05 Roman Festchook
11         * lib/menu.c: rewritens menu UI to be more flexible when using translation
12           string (problem with long translations)
13         * po/uk.po: translation updated
14         * configure.in: version 1.5.1pre2
15
16 2005-09-04 Daniel Fischer
17         * ap-utils.spec: adopted to SUSE Linux 9.3, new required packages for build: ncurses-devel
18
19 2005-07-05 Jorma Karvonen
20         * po/fi.po: Finnish translations added
21
22 2005-07-05 Sharuzzaman Ahmat Raslan
23         * po/ms.po: Malay translations added
24
25 2005-05-22 Roman Festchook
26         * lib/common.c: fixed displaing field names when user enter ip
27           and label in connect options screen
28         * lib/ap-utils.h: fixed showing wrong RSSI in dBm on ALMEL410 APs with SBRIGES ext
29          in ap-config and ap-gl utility
30         * src/stations.c, ap-gl/stations.c: fixed showing wrong LQ% in ap-config and ap-gl
31         * lib/common.c, lib/set_oeminfo.c: removed translation of nontext string
32         * src/bridge.c: fixed displaying client isolation status (reversed:)
33         * po/uk.po: translation updated
34         * configure.in: version 1.5.1pre1
35
36 2005-05-22 Clytie Siddall
37         * po/vi.po: Vietnamese translations for ap-utils package added
38         * lib/aps.c, lib/wlan.c: spelling fixes preambule -> preamble
39         * lib/common.c: reason->reasons
40
41 2005-04-20 Steve Murphy, Philibert Ndandali, Viateur MUGENZI, NoÃ'lla Mupole,
42 Carole Karema, JEAN BAPTISTE NGENDAHAYO, Augustin KIBERWA, Donatien NSENGIYUMVA,
43 Antoine Bigirimana
44         * po/rw.po: Kinyarwanda translations for ap-utils package added
45
46 2005-03-07 Roman Festchook
47         * src/ap-rrd.c: changed format of error messages
48         * configure.in, NEWS: version 1.5
49
50 2005-03-06 Jan Rafaj
51         Since one of the users has provided me with SmartBridges APPO,
52         the support for latest APPO firmware (1.4k5) can now hopefully
53         be finished as originally intended.
54         * TODO: updated
55         * Documentation/FAQ: updated
56         * ap-gl/Makefile.am:
57           - bugfix: added missing @CURSESLIBS@ to the target
58         * lib/ap-utils.h:
59           - Q_HELP is gone
60           - added dbmconv() macro to correctly handle dBm computing for
61             smartBridges firmware
62         * lib/ap_search.c:
63           - 'Wireless' OID is really 'sysDescr' OID
64           - no longer ask for community, since device will respond to
65             sysDescr query no matter what community is currently being used
66             (Roman, thanks for notifying!)
67           - bugfix: 'AP NAME' changed to 'FW TYPE (VERSION) AP NAME', to
68             reflect better whats being displayed
69           - bugfix: scan_local_segment() now triggers screen-width truncation
70             limit correctly
71         * lib/common.c:
72           - cosmetics: screen is now properly cleared with exit_program()
73         * lib/input.c:
74           - bugfix: exclusive use of getch() in wait_key() instead of
75             escape-sequences-not-aware getc() results in greater robustness
76             of input code (it is now a lot harder to end up with buffered
77             content in stdin, that would otherwise lead to odd results
78             elsewhere)
79           - get_value() almost completely rewritten. switched from getchar()
80             to getch() to get correct output on older terminals, as well as
81             to avoid displaying of escape-sequences and to interpret escape-
82             sequences for the following usual keys, that now work:
83             INSERT (toggles Insert/Overwrite mode)
84             DELETE (rightside delete)
85             BACKSPACE (leftside delete)
86             LEFT ARROW (move cursor back 1 character)
87             RIGHT ARROW (advance cursor forward 1 character)
88             HOME (move to the beginning of the string)
89             END (move to the end of the string)
90           - bugfix: get_value() will now omit leading zeros from correct number
91             given by the user (they will be eaten upon user's ENTER keypress)
92           - bugfix: in get_mask(), trans_count must be always reset upon
93             failure to validate user input, or after single failure, all
94             subsequent attempts would (previously) fail
95         * lib/oui.c: added OUIs:
96           - 000E2E (Edimax Technology Co., Ltd.)
97           - 000F66 (Cisco-Linksys)
98           - 00117C (e-zy.net) :)
99         * lib/set_oeminfo.c:
100           - prepended 'USB ' in front of 'Vendor ID' and 'Product ID'
101             (cosmetic)
102         * lib/snmp.c:
103           - bugfix: eliminated leak by unfreed malloc'ed memory in snmp() using
104             static buffer
105           - introduced three new functions: close_sockfd(), open_sockfd()
106             and reopen_sockfd(). They should really be in common.c, but then
107             again, they are low-level stuff that should primarily be used
108             only in snmp(), and snmp.c itself contains no ncurses stuff
109             so functions it defines can be reused by external non-ncurses-
110           - in snmp(), switched from sig*jmp()/alarm() timeout code to select()
111             in favor of simplicity and possibility to monitor stdin read-state
112             change at the same time
113           - snmp() will now return with 0 immediately upon keypress, if
114             snmp_quit_by_keypress = 1 and type = GET. This has been added
115             to allow user-requested last-resort quit from blocking state
116             (for example when the target AP does not respond). The decision
117             of what to do is up to the calling code, that has to check
118             stdin content and act accordingly (currently this is used for
119             immediate quit using q/Q key from otherwise blocking snmp() calls).
120           - sockfd is now globally defined here
121           - snmp() now always 'flushes' sockfd prior further network processing
122             so that eventual packet received on sockfd prior snmp() call
123             wont cause desync errors
124           - snmp_retries global is gone. We need to wait at least 1 second
125             past sendto() for response packet, and do everything necessary
126             to avoid 'response for previous request received in next snmp()
127             call' => extra TODO: check, whether the OID part of received packet
128             matches with OID of preceding request, and if not, flush sockfd
129             and do an extra retry of sendto()/recv()
130             dependant programs.
131         * Documentation/ap-tftp.8:
132           - (introduced in previous patchset)
133           - added warning that it is unsafe to try upgrading devices for whose
134             there's no vendor firmware nor upgrade utilities (such as
135             Tellus A13 a.k.a. i-Tec AP GOLD with blue front)
136         * src/Makefile.am:
137           - ap-tftp needs to be linked to libap.a from now on
138         * src/ap-tftp.c:
139           - bugfix: computation of percentage was not really correct in v1.0
140           - bugfix: fixed memleak caused by unfreed strdup()
141           - cleanup; use of float type eliminated
142           - it should be now possible to reuse tftp() for .cfg upload, too
143             (.cfg upload code still not there)
144           - revamp of config. parameters
145           - added capability to upgrade all AT76C510-based SmartBridges
146             devices (those with FCC ID 'PWG DOLPHIN')
147         * src/aplink.c:
148           - polling mode is now always enforced
149           - LQ top value is now computed/shown for devices with ATMEL410
150             SBRIDGES MIB
151           - bugfix: screen is now correctly cleaned up upon transition
152             from 'associated: yes' to 'associated: no' state
153           - added pause possibility (using 'q' or 'Q' key)
154           - big facelift: added RSSI 'rounding' (a.k.a. RSSI average / last
155             20 samples) gauge, and a general side-scrolling bargraph
156             showing the history of RSSI, RSSI average, RSSI rounding, and,
157             in case of smartBridges firmware, also Link Quality. Views
158             can be toggled using 't' or 'T' key. At the moment, all values
159             are presented in percentage, since this (compared to dBm)
160             does not fluctuate a lot among different firmware versions.
161             User may just pause the polling process and see the corresponding
162             dBm value for the bar currently shown in graph, near the
163             corresponding gauge.
164         * src/auth.c:
165           - bugfixes: shown ea_dest_port, ea_time and ea_port values are now
166             properly decoded
167         * src/bridge.c:
168           - renamed cf_trap_ports to cf_ports (cosmetic)
169           - bugfix: fixed up order of cf_ports to respect MIB-defined order.
170             Interresting note: ATMEL12350 EZYNET MIB firmware actually
171             returns config_port = 0 when it should return 3 ('Both' ports) =>
172             this case is now taken care of.
173         * lib/common.c:
174           - screen is now cleared upon exiting ap-config
175         * bugfix: fixed rare ap-config crash when sysDeviceInfo OID query
176           would return structure length of 92 bytes instead of 128. Suspection:
177           returning 128 might be a snmp() state machinery error?
178         * squashed any sockfd lowlevel-manipulating stuff (socket(), bind(),
179           close()) everywhere in favour of already globally declared sockfd
180           in snmp.c and eventual reopen_sockfd() call. Lets forget about
181           sockfd if we use just snmp(). TODO: re-evaluate necessity to use
182           reopen_sockfd() in common.c and file.c .
183         * dbmconv() is now used in every place that handles raw->dBm
184           conversion - TODO: just the ap_mrtg needs to be fixed (add
185           detection for SBRIDGES ap_vendorext, then dbmconv())
186         * cosmetics: highlighting over changed values will now disappear,
187           once they are written (using 'W' key)
188         * ERR_CREATING_SOCKET and ERR_BINDING_SOCKET replaced with one single,
189           more generic ERR_SOCKET
190         * new feature: it is now possible to change polling interval in
191           range from <0,1;86400> seconds (default is 1 second)
192
193 2005-01-16 Jan Rafaj
194         * ap-gl/auth.c: small bugfix
195
196 2005-01-15 Roman Festchook
197         * src/ap-rrd.c: added utility to store stats from AP into RRD database
198         * src/wlan.c: added 'ACK timeout' additional info into [T] SIFS time (msec)
199                 option description
200         * configure.in, NEWS: version 1.5pre2
201
202 2005-01-11 Jan Rafaj
203         Note to SmartBridges PTE: you could have nice support in ap-utils
204         at cost of sending me one APPO sample. Since I actually have
205         no sample to test & verify on, all my support for airPoints is on
206         blind or 'someones trial and error report' basis. You should really
207         support OSS developers better way. Info about how to reliably load
208         airPoint PRO firmware to non-SB brand devices, based on the same HW
209         ref. design, would of course help too.
210
211         NOTE TO ALL USERS: IF YOU HAVE SMARTBRIDGES airPoint PRO (indoor or
212         outdoor) AND WANT BETTER AP-UTILS SUPPORT, YOU CAN SEND ME ONE SAMPLE
213         OF THIS DEVICE. OTHERWISE THERE WILL APPARENTLY BE _INCOMPLETE_ SUPPORT
214         EVEN IN FUTURE! THE LAST APPO I I'VE SEEN IN BAZAAR THAT I WAS PLANNING
215         TO GET IN ORDER TO IMPROVE SUPPORT IN AP-UTILS, HAS BEEN JUST SOLD
216         OUT, SO MY PLANS ARE GONE. I'M NOT WILLING TO PAY LIKE $350
217         FOR ONE SAMPLE JUST TO SUPPORT THE WORLD. SO UNTIL SOMEONE SUPPORTS
218         ME WITH SAMPLE DEVICE TO TEST ON, MY SUPPORT FOR SmartBridges
219         APPO in AP-UTILS IS _OVER_ (and this round of patches is apparently
220         the last effort to improve support in this area).
221         I'LL ALSO ACCEPT ANY DEVICE THAT USES THE SAME FIRMWARE / MIB
222         AS SMARTBRIDGES airPoint PRO.
223
224         You can contact me about the subjects above via e-mail at
225         <jr-aputils at cedric dot unob dot cz>.
226
227         Dedicated to memory of cat Micka, my pet.
228         * EZYNET-enhanced AP firmware is now freely available! Read more about
229           its availability, upgrade possibilities and caveats in README,
230           section 'Firmware available free of charge for ATMEL12350 MIB
231           devices' !!!
232         * renamed all references of 'VERNET' to 'EZYNET' (true vendor name)
233         * renamed all references of 'TELLUS' to 'GEMTEK' (Tellus, SparkLan,
234           etc. appear to be GemTek subsidiaries or at least they seem to use
235           firmware from GemTek. If someone knows I'm wrong with this
236           conclusion, please let me know).
237         * note: my primary focus is on support for devices running firmware
238           0.2.x.x, equipped with flash memory AT29LV040A (TSOP1), and
239           second SRAM, such as Tellus A14, SparkLan WX-1590L, etc.
240           Easy way of how to tell that the device has second SRAM, is
241           presence of (poor, locky) web management interface. Older devices
242           with single SRAM may be supported too, but my older test equipment
243           is restricted to W-Link WEN2021 and I-TEC AP GOLD / blue, which means
244           that support for other old ATMEL flavours may or may not work,
245           despite all effort towards supporting them.
246         * README:
247           - added entries for supported APs: i-Tec AP GOLD (black front),
248             InterEpoch IWE1000A, OSBRiDGE m2410/p2410, SparkLAN WX-1590,
249             SparkLAN WX-1590L, D-com WX-1590 web, BOSSWAP
250           - the supported AP table is now sorted according to manufacturer name
251           - added section 'Firmware available free of charge for ATMEL12350 MIB
252             devices'
253           - made WARNING notices more accurate
254         * THANKS:
255           - added entry with thanks to EZYNET
256         * Makefile.am:
257           - reordered directory components so that 'intl' and 'po' will be
258             built as last ones. This helps on systems with old/broken auto*
259             tools, where building 'po' may fail (it still will do, but its
260             failure now wont prevent building other components).
261         * Documentation/mibs-atmel:
262           - created & populated with all AT76C510 MIB prototypes that should
263             be supported by ap-utils
264         * ap-gl/ap-gl.c, ap-gl/stations.c:
265           - backport of few changes from respective counterparts in src/,
266             to stay compatible with changed color scheme definitions
267             and format of 'Stations' output (btw, there is now no difference!)
268         * ap-gl/auth.c:
269           - backported few non-invasive changes from auth.c
270         * lib/ap-utils.h:
271           - added DONE_WRITING_APCONF & ERR_WRITING_APCONF, since they are
272             now referred from connect_options() as well as get_opts()
273           - added new structs AssociatedSTAsInfo_ATMEL410,
274             AssociatedSTAsInfo_ATMEL12350, NetworkSettings_ATMEL410_SBRIDGES
275             and NetworkSettings_ATMEL12350_EZYNET in favour of unified support
276             across most available vendor-enhanced MIBs
277         * lib/common.c:
278           - connect_options() is now verbose about status of writing
279             ~/.ap-config file, through DONE_WRITING_APCONF & ERR_WRITING_APCONF
280           - bugfix: fixed ap_vendorexts[ap_type][] boundary check error;
281             no more segfaults when manually specifying MIB type as "ATMEL12350"
282           - bugfix: get_mib_details() no longer relies on OUI part of device's
283             eth. MAC address as authoritative info for MIB vendor extension
284             determination. This was 1. giving totally fake results
285             if someone changed device's MAC, and 2. giving false results
286             for people with devices whose firmware has had certain MIB vendor
287             extensions available (for example SparkLan users with GEMTEK
288             firmware). Autodetection should now work for much broader range
289             of devices with AP firmware.
290         * lib/file.c:
291           - added functionality for HOME, END, PGUP and PGDN keys
292         * lib/input.c:
293           - bugfix: in get_value(), use wmove()/wrefresh() instead of wechochar
294             with 0x08 char. (backspace) as parameter - this fixes visual effect
295             of disrespecting leftmost bound on platforms with older ncurses
296           - bugfix: get_mac() now forces user to specify all 12 numbers of MAC,
297             avoiding ambiguous results
298         * lib/menu.c:
299           - squeezed the number of wrefresh(menu) calls to a minimum
300           - mark and highlighting of current menu item are now
301             cleared/restored upon entering/leaving atmel_set_oeminfo()
302         * lib/oui.c: added OUIs:
303           - 000F3D (D-Link Corporation)
304           - 00112F (ASUSTek Computer Inc.)
305         * lib/scr.c:
306           - simplified & unified 'Stations' menu output section in
307             scroll_rows() - it is now used for all ATMEL AP types.
308             Part separately dealing with APs using SmartBridges firmware
309             has been eliminated.
310           - shorten screen output of print_top_rssi()
311           - bugfix: in scroll_rows(), clear_main(3) changed to
312             clear_main(row), to make the first-row offset of scroll list
313             really configurable (required by auth.c)
314         * lib/set_community.c:
315           - left boundaries of community fields now start at offset 37
316         * lib/set_oeminfo.c:
317           - now also shows board VID & PID
318           - added possibility to configure # of calibrated channels
319           Reached 100% compatibility with original utility.
320         * lib/snmp.c:
321           - removed RETRIES constant. Instead, snmp_retries now keeps
322             the default amount of retries. This was somewhat necessary,
323             as we may eventually influence amount of retries one snmp() call
324             will attempt, in src/aplink.c
325         * lib/test.c:
326           - since test() is not yet ATMEL12350-ready, temporary kludge
327             has been added to disable this menu for devices with
328             such a MIB
329         * lib/wlan.c:
330           - bugfix: fix utility crash, that could previously happen if
331             someone changed value of Fragm. threshold from default to
332             value < length of typical expected SNMP response packet,
333             on device managed with ap-config via wireless port.
334             The return value of snmp() is now checked against the number
335             of varbinds members entering snmp() (it covers return value
336             <= 0 as well).
337             NOTE: IT IS _VERY_ UNWISE AND RISKY TO CHANGE 'RTS threshold'
338             AND 'Fragmentation threshold' VALUES ON DEVICE MANAGED VIA
339             WIRELESS PORT, SINCE THEY HAVE DIRECT IMPACT ON PACKETS TRANSMITTED
340             VIA WIRELESS PORT, AND IF THE VALUE IS BEHIND CERTAIN THRESHOLD,
341             THE DEVICE MAY BECOME COMPLETELY _UNMANAGEABLE_ VIA WIRELESS PORT.
342             If this happens and you have management access to the device
343             via wireless port only, you may try your favourite *-snmp tools to
344             restore RTS threshold and Frag. threshold settings to their
345             default value (2346), but if this fails, the only real way left
346             to fix these values would be through ethernet or USB port. Beware!
347         * lib/set_oeminfo.c, lib/sysinfo.c, lib/wlan.c:
348           - bugfix: changed assumption about selection of proper length
349             sysDeviceInfo OID - this cant be distinguished based on ATMEL MIB
350             type, since, for example, NETGEAR ME102 MIB has ATMEL12350 MIB, but
351             has length of this structure 128 bytes (which most ATMEL410 MIB
352             equipped devices have). Now the proper structure is selected
353             based purely on length of response returned on SysDeviceInfo
354             SNMP query - should 'fix' all places that deal with values
355             generated by query to SysDeviceInfo OID
356         * src/aplink.c:
357           - newly introduced. Embeds atmel_aplink(), which is bound
358             to 'AP link' entry in the 'Info' menu. This entry allows to
359             monitor link state of the device in APclient or WRepeater mode.
360             It will inform user whether the APclient device is actually
361             associated to the AP or not, and if yes, what is the RSSI level of
362             the link (as well as Link Quality in case of device with
363             SmartBridges firmware, or actual connection speed in case of device
364             with EZYNET firmware), MAC of joined BSSID, ESSID, and used
365             RF channel.
366             RSSI top value per entire measurement session is also available.
367             Since the RSSI indication may be somewhat unstable (at least
368             with EZYNET firmware), showing of RSSI average from up to
369             99999 samples has also been implemented.
370             Note that the code will currently only work for ATMEL410 / SBRIDGES
371             or ATMEL12350 / EZYNET MIB devices, as MIBs of firmware from
372             other vendors does not seem to support NetworkSettings OID.
373             Exception is ATMEL12350 / NONE (NetGear ME102), whose APCLientInfo
374             OID is capable to give connection status too, but is not currently
375             implemented, since it uses different OID & structure and I do not
376             possess ME102 board to test with (TODO).
377         * src/ap-auth.c:
378           - hardened input validation for the '-i <ip>' parameter (according to
379             get_ip() in lib/input.c)
380           - added AP MIB type autodetection => utility will now also work
381             for devices with ATMEL12350 MIB. Devices with NWN MIB are yet
382             to be supported (TODO).
383           - assigned credits to Teemu
384         * src/ap-config.c:
385           - added definitions for several 'should be defined by default' color
386             pairs, that are actually used in bargraph code of aplink.c .
387             Previous pairs 1,2,3,4 were redefined to 11,12,13,14 to avoid
388             clash with 'standard' color pairs above. This change has been
389             propagated to all files dealing with color pairs.
390         * src/ap-mrtg.c:
391           - the same level of changes as in src/ap-auth.c. As side result,
392             it is no longer needed to specify AP MIB type (it will be
393             autodetected).
394           - bugfix: take into account different length of wirelessStatistics
395             structure in ATMEL12350 MIB & EZYNET extensions => '-t w'
396             will now also work for devices with this MIB & extensions.
397           - bugfix: restrict the '-t l' to ATMEL410 MIB devices in APClient
398             mode (ATMEL12350 MIB devices usually do not return any LinkQuality
399             indicators in wirelessKnownAPs structure).
400         * src/ap-tftp.c:
401           - introduced tftp client for upgrading ATMEL-based AP firmware.
402             Should work with boards utilising either 1.4x.y firmware (generally
403             AT76C510+INTERSIL boards, such as D-Link 1150, W-Link WEN-2021,
404             SmartBridges APPO, etc.), and boards utilising 0.x.y.z firmware
405             (generally AT76C510+RFMD boards, such as Tellus A14, Sparklan
406             WX-1590L, NetGear ME-102, OSBRiDGE p2410/m2410, etc.).
407             Use with care and NEVER EVER try to use this utility to upload
408             firmware that is from different vendor than your AP, unless you
409             perfectly know what you are doing, of course - otherwise,
410             you may irreversibly turn your AP into paperweight quite easily.
411             ATMEL APs are well known for their general firmware upload
412             design flaw (no authorization necessary for firmware upgrade),
413             that has caused many destroyed APs by joe-blow users uploading
414             incorrect firmware, and even APs destroyed by malicious users
415             that have intentionally uploaded incorrect firmware. See manpage
416             for details.
417             You have been warned.
418         * src/ap-trapd.c:
419           - recognise ATMEL12350 enterprise ID => will now react to traps
420             sent by devices with ATMEL 12350 enterprise MIB
421           - will now also print Trap number along with its string
422             representation
423           - bugfix: fixed problem with printing trap strings from
424             non-SmartBridges traplist when '-s' given, and vice versa
425         * src/auth.c:
426           - introduced as replacement for old 'auth_mac.c'. Simple 'auth'
427             name reflects its purpose better - it now contains not just
428             MAC-based "auth.", but also other auth. types (Radius, 802.1x)
429             based on the available MIB vendor "extensions".
430           - now properly distinguishes between authorization error and
431             invalid data error for SET snmp() operation. Particularly imporant
432             when user tries to enter Config/MAC Auth menu with user community
433             (which only permits reading, but not writing, and since writing
434             is basically required even for pure showing of authorized MAC
435             addresses, we need to distinguish these errors).
436             If the AP is accessed with 'user' community and it has record(s)
437             in MAC auth. list, it will print '(insufficient community used)'
438             in the first row of the MAC auth. list field.
439             public
440           - bugfix: it is now possible to delete last MAC entry too
441           - bugfix: when no MAC address left on the list, disallow 'Delete'
442             function
443           - should now be ready for move to lib/. (and purging in src/)
444           - it is now possible to 'escape' from prompt that appears after
445             pressing 'd' (delete MAC), upon entering '0'
446           - by default, if number of defined MACs is greater than the
447             visible scrolling area, the list tail will be shown
448           - if adding new MAC addresses, the list will advance to the last
449             (currently added) MAC entry to show its position in the MAC table
450           - added functionality for HOME, END, PGUP and PGDN keys
451           - added functionality for extra Auth. enhancements present in
452             ATMEL410 MIB with SBRIDGES extensions (Radius auth.), and
453             in ATMEL12350 MIBs with EZYNET extensions (802.1X auth.)
454           - now properly distinguishes MIBs with 2-mode AuthorizationMacEnable
455             OID, and those with 3-mode AuthorizationMacEnable OID
456           - added check against entering duplicated MAC to the MAC table
457         * src/bridge.c:
458           - bugfixes: since SBRIDGES and GEMTEK represent same lvalue, each
459             occurence of ap_vendorext comparison with value SBRIDGES or GEMTEK
460             must be and-ed with result of comparison against ap_type value
461             or all sorts of weirdness may occur (such as non-working options
462             for specific vendor extensions, although they normally should)
463           - bugfixes: revised presence of all OIDs in all actually supported
464             vendor-extended MIBs. Result: all available OIDs relevant to
465             this menu should now also be correctly supported on devices
466             with SmartBridges APPO firmware and NetGear ME102 device firmware.
467           - Label 'Wireless' for config-enabled port mode changed to
468             'Wireless (can be risky)'. I've finally made a resolution
469             to step forward in this - setting config-enabled port to
470             wireless-only can even be deadly for non-USB equipped devices,
471             if configured improperly, if no second ATMEL-based device
472             is handy for fixing conf. on the peer via its wireless port,
473             for outdoor installations, and in couple of other scenarios.
474             REALLY THINK MANY TIMES PRIOR SETTING THIS TO wireless-only !!!
475         * configure.in, src/Makefile.am:
476           - avoid needless linking with curses library for several utilities
477             (ap-auth, ap-mrtg, ap-tftp, ap-trapd).
478         * Sysinfo menu will now also show current 'Operational mode'
479         * bugfix: all conditions that check return value of to snmp(,i,GET)
480           with i > 1, changed from '<= 0' condition to '< i' condition.
481           This is very important in cases when the device does not return _all_
482           the requested varbinds members filled up, which would usually lead
483           either to memory corruption often followed by ap-config crash
484           with 'segmentation fault' reason. If there's unreliable media
485           between the managed device and ap-config, this could previously
486           happen - typically, devices managed via their wireless port
487           or incorrectly configured devices (bad Frag. threshold and/or
488           RTS threshold) may respond with incomplete replies.
489         * naming convention of many variables, structures and OID names changed
490           to respect this scheme (cosmetics, intended coding standard):
491           - names of several #defines changed to be descriptive as
492             'STATUS_DESCRIPTION'
493           - OID names, unless absolutely necessary, should be always named
494             EXACTLY after the corresponding OID name in MIBs for easier
495             referencing
496           - names of structures named after OID, should end with '_s' or
497             '_' followed by something reasonable
498           - variable names should reflect their whole purpose
499
500 2004-12-09 Roman Festchook
501         * lib/common.c: fixed getting additional character into AP label during autodetection
502
503 2004-12-09 Michel Robitaille
504         * po/fr.po: updated translation
505
506 2004-11-28 Roman Festchook
507         * Documentation/ap-gl.8, Documentation/README.ap-gl: info from
508             Documentation/README.ap-gl moved to ap-gl man page, removed
509             Documentation/README.ap-gl
510         * Documentation/README.ap-auth:
511              removed because all info now in ap-auth man page
512
513 2004-11-28 Roman Festchook
514         * lib/common.c: added checking then function called from ap-gl utility
515             in connect_options() automatic detecting MIB, extention. Now community
516             must be entered manually
517         * lib/ap_search.c: reverted back to scan oid Wireless info string (that find APs even
518             with wrong community) raser than APName oid; info string now truncated only if it
519             cant be displayed at current screen width (now it screen width independed)
520         * Makefile.am: into dist-hook added command to remove po/*.gmo files from
521             final distribution package to decrease size
522         * ap-gl/ap-gl.c: in ap-gl utility reverted back to ATMEL_PRISM rather than ATMEL410 naming
523         * Documentation/ap-config.8: fixed minor bug in example key for 64-bit WEP encryption
524             (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=243208)
525         * Documentation/ap-gl.8, Documentation/Makefile.am: added man page for ap-gl utility
526         * Documentation/ap-auth.8, Documentation/Makefile.am: added man page for ap-auth utility
527         * po/fr.po: fixed coredump in Config menu with French locale (now just removed long
528              translated string from po file)
529              (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=259645)
530         * po/uk.po: updated translation
531         * ap-gl/stations.c: fixed RSSI dBm representation
532         * configure.in: version 1.5pre1_FreedomOfUkraine
533         
534 2004-11-24 Jan Rafaj
535         * README:
536           - made WARNING2 more accurate; added WARNING3
537         * lib/Makefile.am:
538           - added set_oeminfo.c to the list of source modules
539         * lib/ap-utils.h:
540           - QHELP and SELECT #defines moved here from lib/stat.c, as we now
541             reuse them. QHELP renamed to QTHELP (+ toggling mode).
542           - added #defines for NONE, SBRIDGES, TELLUS and VERNET constants
543             with numbering according to new ap_vendorexts[][]. Actual values
544             of these are hold within newly introduced ap_vendorext global
545             (similar to meaning of ap_type global).
546           - new data type 'rdprops', used to describe regulatory domain
547             properties (code, description, first channel, last channel)
548           - formatting fixes (cosmetic)
549           - now #includes lib/ap-curses.h
550         * lib/ap_search.c:
551           - output formatting changes (unification)
552           - in case the length of AP NAME being displayed for actually
553             scanned AP exceeds 27 characters, truncate the display
554             to first 27 characters (80x25 screen limit) and append
555             '>' character to indicate that not full AP NAME has been
556             displayed
557           - user is now prompted for a community, that will be used
558             to detect APs, prior scanning
559         * lib/common.c:
560           - introduced new char *ap_vendorexts[][]; moved char *ap_type[]
561             here from src/ap-config.c and ap-gl/ap-gl.c
562           - in favour of proper naming, renamed all *APNAME #defines
563             to *APLABEL (same for texts, with a help message that clearly
564             states that AP LABEL is _independent_ of AP NAME (AP NAME = name
565             stored inside the AP), to prevent eventual user confusion.
566           - all references to 'name' changed to 'label' in order to respect
567             that AP label != AP name (see above). permitted length of label
568             is now max. of 16 characters.
569           - implemented ability to manually select MIB vendor extension
570             along with MIB type (previously just 'AP type:'). This was
571             really necessary as we couldn't rely on get_mib_details()
572             probing especially when the target AP was not available.
573           - if AP MIB type & vendor extension has been _autodetected_, or if
574             there's a good belief that the to-be-connected AP (via
575             connect_options()) is really alive (when we enter connect_options()
576             from ap_search()), then offer possibility to use AP NAME
577             as AP LABEL. However, as AP NAME may have max. length of 31
578             characters, it will be always truncated to first 16 chars
579             (max. length of AP LABEL), and user will be warned if this happens.
580           - introduced new 'rdprops regdom_types[]' field to unify reg. domain
581             description. Along with newly introduced regdom_types[]
582             and regdom_idx(), it enables us to get reg. domain properties
583             related to specific reg. domain code at any time, anywhere.
584             Merged reg. domain codes & properties of MKK1 & ISRAEL freq.
585             domains. Change: MKK domain defines only channel 14.
586           - squashed ch_list() in favour of regdom_types[] => killed malloc()s
587             in wlan.c & test.c. char *channels[] now keeps statically what
588             ch_list() was used to generate on demand before
589           - avoid asking for community upon entering connect_options()
590             called from ap_search(), as we already know the community
591           - thrown myself into about()
592         * lib/file.c:
593           - all references to 'name' changed to 'label' in order to respect
594             that AP LABEL != necessarilly AP NAME (see above)
595           - implemented storing of MIB vendor extension into ~/.ap-config
596           - changed name of stored file with MAC authorised addresses
597             in the AP from '~/ap-MIBTYPE.stations' to
598             'ap-IP-MIBTYPE-MIBEXT.stations'
599           - output formatting changes (in AP list code):
600             - 'NAME' -> 'LABEL', 'TYPE' -> 'MIB TYPE', newly introduced:
601               'MIB EXT'; accomodate to new layout
602           - in parse_db_str(), truncate displayed length of AP NAME to 16
603             characters (80x25 screen limit), upon length of label being read
604             > 16 characters (80x25 screen width limit), and append '>'
605             character to indicate that it has not been displayed
606             in its full length (TODO: remove screen width limits)
607           - fixed numerous memleaks caused by missing free()ing of
608             ip, passwd and label parts of APList structure in get_opts()
609           - option writing ~/.ap-config is now verbose. Required moving
610             main print_help() to the while(1) cycle body.
611           - save_Stations() is now verbose at minimum level
612         * lib/input.c:
613           - patched get_value() so that zero-length ANY_STRING type input
614             can be optionally allowed. Selected string input fields now accept
615             empty value. minv & maxv arguments switched from int to unsigned
616             int so that we may cover full uint32 range - also involved
617             switching from atoi() to strtoul(), as we need to check a condition
618             when errno == ERANGE (given value bigger than 0xFFFFFFFF).
619           - implemented wait_key() as unified means to wait for user input
620             selection different ways. The actual input mode with respect
621             to waiting is being held in wait_mode global, that can
622             be toggled using 't/T' keys in statistic views where appropriate
623             (SysInfo, Ethernet statistics, Wireless statistics).
624           - added help_ysn() as preferred & unified way to wait for user Y/N
625             choice. Prints Y/ safe N help message; clear settings subwin
626             & returns 0 upon pressing y/Y or 1 upon n/N. All Y/N code
627             everywhere has been replaced with single call to help_syn().
628         * lib/menu.c:
629           - added hidden call to atmel_set_oeminfo (secret 'OEM info settings'
630             menu), based on set_oeminfo_allowed global from set_oeminfo.c
631         * lib/scr.c:
632           - print_bottom() now also prints MIB vendor extension info
633             in form of 'Ext: <TAG>'
634           - introduced print_bold() to decrease high amount of low-level
635             attribute-setting stuff everywhere (involved conversion
636             to print_bold() wherever possible)
637           - removed print_viewtype() and all references to this replaced
638             with print_bold()
639         * lib/set_oeminfo.c:
640           - newly introduced. Actually only functional for ATMEL CPU-based
641             APs. ALLOWS TO CHANGE OEM INFORMATIONS STORED WITHIN THE AP,
642             AFTER PRESSING 'S' KEY WHILE IN 'Config' MENU. Note that this
643             is a HIDDEN function, since it is really only suitable for large
644             WISPs & repair shops. Compatibility level that has been achieved
645             with original windows utility is around 96%. Use with care.
646         * lib/snmp.c:
647           - added (currently commented out) new function ber_decode_uint().
648             It may come in handy elsewhere in the future.
649         * lib/sysinfo.c:
650           - atmel_sysinfo() now uses select() to wait for user keyboard input.
651             'q' or 'Q' key quits, others force update without clearing screen.
652           - (hopefully) fixed conversion of raw input buffer value to int
653             for uptime-displaying code
654         * lib/sysinfo.c, lib/sysinfo_set.c, lib/wlan.c, lib/ap-utils.h:
655           (cosmetical):
656           - added #include <time.h>, missing on some platforms
657           - renamed ptr410 and ptr12350 to str410 and str12350
658           - renamed SysDeviceInfo_* to sysDeviceInfo (MIB conformance)
659           - fixed interpretation of (long) INT value returned by the AP
660             in UpTime-displaying code
661           - implemented toggling of polling mode through 'T' [works
662             only with ATMEL12350 VERNET MIB-compatible devices]
663           - uses select() instead of getch() when polling is active
664           - indentation fixes (cosmetic)
665         * lib/test.c:
666           - changes to use channels[] and regdom_types[] instead of
667             ch_list() and malloc()s
668         * lib/wlan.c:
669           - changes to use channels[] and regdom_types[] instead of
670             ch_list() and malloc()s
671           - fix: added missing print_help(WAIT_RET)
672         * ap-gl/ap-gl.c:
673           - few indentation fixes (cosmetic)
674           - changes to keep sync with new lib functionality (MIB vendor
675             extensions code)
676         * ap-gl/stations.c, src/stations.c:
677           - print_help() is now called from within while(1) cycle, in order
678             to be compatible with updated save_Stations()
679         * src/bridge.c:
680           - fix: added missing print_help(WAIT_RET)
681         * 'RegulationDomain' renamed to 'RegulatoryDomain' for MIB conformance
682         * further optimisations everywhere for reusing print_bold()
683         * load of small bugfixes
684         * print_title() replaced with new print_top() that will also
685           handle displaying "view" type (on LHS) along with menu title
686           (on RHS) using single pass. This was really in need of unification.
687           Side effect: no need to redraw title strip on each screen update
688           anymore (no two separate ways to write to same location).
689         * some spelling, indentation & accuracy fixes here and there
690
691 2004-11-09 Jan Rafaj
692         * README:
693           - removed reference to HARDWARE-NOTES, that didnt made it into
694             previous ap-utils versions by accident
695           - added WARNING 1 and WARNING 2 sections (originally intended to be
696             in HARDWARE-NOTES, but the magnitude of their importance deserves
697             to put them straight into README)
698         * TODO: updated
699         * lib/ap-utils.h:
700           - added "(valid)" to the ERR_RET message, which more accurately
701             reflects what may actually happen (AP actually _may_ return
702             data, but in an unexpected format)
703           - enhanced WirelessStatistics structure for TransmittedPackets_11Mbps,
704             TransmittedPackets_55Mbps, TransmittedPackets_2Mbps, and
705             TransmittedPackets_1Mbps so that we can support functionally
706             enhanced firmware from VERNET WISP.
707         * lib/ap_search.c:
708           - in third column, display operAccessPointName OUI using label
709             "Name" instead of Wireless OUI. Makes more sense.
710           - made the number of APs per screen, as well as the offset at which
711             the info about whats actually scanned, is printed, relative
712             to the actual screen height (so to increase maximum hard-coded
713             amount of APs displayed, just switch from 80x25 console font
714             to a bigger one, or use X terminal window)
715         * lib/aps.c:
716           - reverted displaying back to RSSI & LQ both in % in screen 1.
717             This is becouse a) we want to keep as close to the view of the
718             original ATMEL utility as possible here, and b) huge dispersion
719             in dBm versus raw value of RSSI exists among different flavours
720             of APs, and the dBm formula unfortunately often gives results
721             very far from real values. So we want to display something thats
722             less jittering in the scope of inter-AP comparison.
723           - cosmetic fixes (2-line legend instead of 3-line)
724           - rebound the 'refresh' from 's' key to otherwise unused keys,
725             in favour of keyboard interface unification
726         * lib/common.c:
727           - created get_mib_details() to provide vendor-specific private
728             ATMEL MIB detection
729           - fixed a bug introduced by the 'name' patch, resulting in
730             omission to clear screen properly when user has given
731             insufficient credentials (bad password) to detect new AP type
732           - made the 'name'-patch code malloc-free (and memleak #2 free).
733             There's no point to use malloc()d space here since we dont
734             reuse it elsewhere (contrary to char *community).
735           - fixed bad variable boundary-handling introduced by 'name'-patch
736             that might result in crash of utility under circumstance
737             when ~/.ap-config didnt previously exist and user attempted
738             to add new AP with name of length >= 7 characters
739           - added possibility to skip name definition if user wants to
740             (useful for example when the newly added AP's IP will be used
741             solely for testing purposes :)
742         * vendor-specific private ATMEL MIB detection is now referred to
743           get_mib_details() everywhere
744         * lib/file.c:
745           - a lot of indentation fixes
746           - in get_opts(): fixed couple of bugs:
747             - it was possible to issue 'Connect' command when the AP list
748               was empty (was leading to endless loop)
749             - 'Delete' command failed to remove last remaining AP from the
750               list, ending up in endless loop (as get_value() doesnt do
751               sanity checking on its input paremeters)
752           - fixed a memleak #1 possibly introduced by 'name' patch - we need
753             to free char *name after its use
754           - in _scroll_rows(), fixed the AP MIB TYPE cutoff-by-format-string,
755             introduced by 'name' patch, and enhanced message size to accomodate
756             the true max. row size instead
757           - in get_opts() appended '(in ~/.ap-config)' behind the user-defined
758             APs list banner, to better reflect the real meaning of 'NAME'
759             (and other fields), to prevent someone from f.e. thinking
760             that the NAME here is the name stored in AP's configuration
761             (which it is NOT, of course).
762         * lib/oui.c: added OUIs:
763           - 000B46 (Cisco)
764           - 000D54 (3Com Europe Ltd)
765           - 000D88 (D-Link Corporation)
766           - 000EA6 (ASUSTEK COMPUTER INC.)
767         * lib/radio.c:
768           - fixed non-working radio menu with ATMEL12350 APs by merging the
769             initial TestModeRadioConfiguration and operAntennaSettings OID
770             modifications when ap_type == ATMEL12350
771         * lib/stat.c:
772           - replaced ERR_RET_PRESS with ERR_RET
773           - simplified; no more forking, goto's reduced, no need of
774             pipe(), alarm() or sig*jmp(); use select() for waiting -
775             it is now possible to quit (by pressing 'q' or 'Q') immediately.
776             Also, the counters now get updated immediately after pressing
777             whatever key != q.
778           - fixed a bug that, due to previous use of sig*jmp(), resulted
779             in lockup when attempting to quit ap-config after it has received
780             invalid packet, by pressing 'q' key several times
781           - WirelessStat(): implemented support of ATMEL 12350 functionally
782             enhanced MIB by VERNET WISP.
783         * lib/sysinfo.c:
784           - enhanced atmel_sysinfo() for displaying system uptime using
785             UpTime OID from ATMEL12350 VERNET MIB.
786         * lib/wlan.c:
787           - fixed showing/setting of BeaconPeriod value for ATMEL12350_TELLUS -
788             acceptable value range is now 0 - 65535 as originally intended
789           - new: implemented showing/setting of 'SIFS time' parameter, specific
790             to APs with ATMEL12350_VERNET firmware/MIB
791         * spelling & indentation fixes
792         * lib/scr.c, src/stations.c:
793           - implemented support for viewing statistics
794             produced by enhanced ATMEL 12350 firmware by VERNET
795           - implemented toggling of RSSI between 'dBm' view, '%' view, and
796             raw view - added new functions print_viewtype_rssi(), conv_rssi().
797             [TODO: update ap-gl/stations.c, too]
798           - pressing other than the selected keys will now result in refresh
799             of all values
800
801 2004-10-24 Roman Festchook
802         * lib/common.c: fix to clear display before displaying AP type 
803         * configure.in: version 1.4.2pre1
804
805 2004-10-24 Przemyslaw Stanislaw Knycz
806         * po/pl.po: translation updated
807
808 2004-10-18 Roman Festchook
809         * lib/common.c: fix to use get_value instead of get_pass for input AP name
810         * po/uk.po: translation updated
811
812 2004-10-18 Teemu Kiviniemi
813         * src/ap-auth.c: command line utility to change the list of authorised MAC addresses added
814         * Documentation/README.ap-auth: some docs for ap-auth utility
815
816 2004-10-18 Aleksey Korenkov
817         * lib/common.c, lib/file.c, src/ap-config.c: patch that adds name to list of APs
818
819 2004-08-08 Dan Pelleg
820         * lib/ap_search.c: fix error when build ap-utils on freebsd.
821
822 2004-06-22 Elif Bilge Maden
823         * po/tr.po: Turkish translation added
824
825 2004-05-16 Roman Festchook
826         * configure.in: version 1.4.1
827         * NEWS: main changes added
828
829 2004-05-16 Michel Robitaille
830         * po/fr.po: updated translation
831
832 2004-05-04 Roman Festchook
833         * lib/ap_search.c: Compiler Error for ap-utils on Darwin 7.3 (Mac OS X 10.3.3) fix
834
835 2004-04-04 Dieter Fiebelkorn
836         * lib/ap_search.c: Compiler Error for ap-utils on Darwin 7.3 (Mac OS X 10.3.3) fix
837
838 2004-03-20 Roman Festchook
839         * ap-gl/bridge.c: Isolate wireless clients status displaying fixed
840         * lib/snmp.c: decreased timeout waiting for snmp reply packet to 1 second
841         * src/ap-mrtg.c: to decrease usage of network and AP CPU AP name only requested if -n option specified
842
843 2004-03-06 Roman Festchook
844         * src/ap-trapd.c: MAc address logging changed to common ap-utils format (without any dividers)
845         * configure.in: version 1.4.1pre3
846
847 2004-02-27 Roman Festchook
848         * lib/ap-curses.h, configure.in: updates to build with SysV curses lib if ncurses not found
849
850 2004-02-27 Daniel Eisenbud
851         * lib, src, ap-gl: Solaris and SysV curses build fixes
852
853 2004-02-26 Roman Festchook
854         * lib/sysinfo.c, lib/wlan.c: fixed Bus error when getting SysInfo structure data from AP on Sun Sparc64 processor
855         * po/uk.po: updated translation
856         * lib, ap-gl, src: removed dublicated includes
857         * lib/ap-utils.h, lib/ap-curses.h, configure.in: updates to build on Solaris with SysV curses lib
858         * THANKS: updated
859
860 2004-02-25 Vladimir N.Velychko
861         * Documentation/Ukrainian/*: translation spelling fixes
862
863 2004-02-25 Roman Festchook
864         * lib, ap-gl, src: removed including config.h from files that include ap-utils.h
865         * lib/ap-utils.h, configure.in: another updates to MacOS X build
866
867 2004-02-24 Daniel Eisenbud
868         * lib/wlan.c: fix to make ap-config able to set ESSID on powerpc and probably other bigendian machines
869
870 2004-02-22 Roman Festchook
871         * src/stations.c; ap-gl/stations.c: added check if AP in Client mode with corresponding warning message to user
872         * configure.in: version 1.4.1pre2
873         
874 2004-02-21 Roman Festchook
875         * configure.in: updated to build under MacOS X
876
877 2004-02-10 Roman Festchook
878         * lib/scr.c: fixed memory leak in scroll_rows function
879         * lib/wlan.c: fixed wrong keys for changing values for NWN APs
880
881 2004-02-04 Roman Festchook
882         * configure.in: version 1.4
883         * NEWS: main changes added
884
885 2004-01-30 Roman Festchook
886         * Documentatin/README.ap-gl: added file with notes about ap-gl utility
887         * TODO: updated
888
889 2004-01-29 Roman Festchook
890         * ap-gl: changed ATMEL410 -> ATMEL_PRISM name, for safe use removed Config port blocking, merged wireless client isolation (unicast & broadcast).
891
892 2003-12-30 Roman Festchook
893         * ap-gl: added new utility for ATMEL410 AP with 1.4k.1 firmware and support for RADIUS auth, wireless clients isolation, Repeater mode, Config port blocking, connected APs extended info (MAC, IP, Parent IP, RSSI, LQ, Status, Port)
894         * lib, src, ap.gl: a lot of internal code moving from program to lib sources
895         * po/uk.po: translation updated
896         * TODO: updated
897         * configure.in: version 1.4pre2 "Happy New Year" release
898         * src/bridge.c: renamed options "Send back broadcast/unicast traffic) to Isolate wireless clients
899         
900 2003-12-28 Ashley Gittins
901         * src/ap-mrtg.c: changes to support ATMEL12350/ME-102 
902
903 2003-11-27 Roman Festchook
904         * TODO: updated
905
906 2003-11-27 Jacek Pliszka
907         * ap-utils.spec, Documentation/README.RPM: added spec file for rpm building
908
909 2003-11-25 Roman Festchook
910         * po/uk.po: updated
911
912 2003-11-23 Roman Festchook
913         * po/uk.po: updated to current sources
914         * src/common.c: changed copyright years to 2001-2003
915         * src/ap-mrtg.c: changed copyright years to 2002-2003
916         * src/aps.c: table header legenda increased to 3 lines
917         * TODO: updated with current goals and removed working now things
918         * configure.in: version 1.3.4pre1
919
920 2003-11-15 Jacek Pliszka
921         * src/ap-mrtg.c: added -n name option to ap-mrtg that, if used, checks if name of the AP polled is same as one given
922
923 2003-11-11 Roman Festchook
924         * src/ap-mrtg.c: fixed to return 999999999 for outgoing traffic when error connecting to AP exist 
925
926 2003-10-27 Jan Rafaj
927         * README,THANKS,TODO: modified
928         * HARDWARE-NOTES: added. This should keep important hardware-related
929           informations that the users _must_ read prior using ap-utils.
930         * reverted parameters order for on_off(), menu_choose() so that
931           we always use <row,col> order everywhere
932         * src/aps.c:
933           - made ap_viewtype global so that the selected view type
934             sustains for whole session
935           - replaced snmp() for SiteSurveyCommand scan with sendto(),
936             as buggy ATMEL12350 firmware does not confirm SiteSurveyCommand
937             reception, but goes straight to internal scanning loop.
938             This allows for attempts to perform SiteSurveyCommand
939             via wireless interface of the AP, which would previously
940             time out due to the reluctance of the firmware to send
941             confirmation, as described above.
942         * src/bridge.c: disallow remote BSSID option key if AP is in
943           Access Point mode
944         * src/common.c:
945           - again changed/corrected the order of autodetection.
946             We cannot check against sysDescr OID of ATMEL12350 in first step
947             becouse ATMEL410 devices would pass this check too and would
948             be falsely marked as ATMEL12350.
949           - added back possibility to manually select the AP type.
950             User is given a choice to either autodetect the device
951             (default), or specify type manually. The latter may have
952             advantage if the AP is not actually available via network.
953           - hide cursor again after user turns back from the subshell
954         * src/radio.c: implemented detection & setup functions for APs
955           that give response to operAntennaSettings OID query in 1-byte
956           format. It seems that these devices do not distinguish between
957           receiving and transmitting antennas. This is true even for some
958           APs with single antenna output (Tellus A14 as an example),
959           where this OID gives really no good to the sum of resulting
960           functionality (why would you ever need to set up which antenna
961           is left, right or diversity, if you got just one ? :^)
962         * lib/ap-utils.h, src/common.c, src/input.c:
963           - added new function get_pass(). This code has been taken from
964             common.c, modified and moved to input.c.
965           - AP type is now displayed once it is selected or autodetected
966           - maximum password length is 16 characters, not more (originally
967             it was 32). It is quite possible more than 16 may work
968             with some devices, but I've never seen an AP MIB that would
969             define community length > 16 characters.
970           - made the offsets at which the values are displayed, relative
971             to the length of option name strings, to ease work for
972             translators
973           - yes_no(): newly introduced
974           - ignore escape key presses in both get_value() and get_pass()
975         * src/ap_search.c:
976           - indentation fixes
977           - if connect_options() is called for discovered APs, the 'type'
978             argument has to be always > 0, as this is being checked
979             against in connect_options(). We increment it with one all
980             the time and decrement back after the check in connect_options().
981             Now, the user is not prompted for AP type in connect_options()
982             if he should not have to be (originally intended behaviour).
983           - check against duplicated responses from ATMEL410 APs. These
984             are also able to answer queries with 12350 in query OID. This
985             is now being explicitly checked for => no more duplicate
986             ATMEL410 and ATMEL12350 APs with same IPs in the Search menu.
987           - do not attempt to assign const char "public" to 'community'
988             variable, as we attempt to free() it elsewhere. We could use
989             malloc() here, but still, this would have no good reason since
990             user is (and should be) always prompted for a password once
991             he selects desired AP from the 'Search' menu, once it is found =>
992             all password-saving & handling parts have been removed for now.
993             This also fixes a crash that would occur if someone would try
994             to connect to an AP in 'Connect' menu, after unsuccessful
995             'Search' attempt.
996           - implemented searching per multiple network devices. This involved
997             modifying ap_search() and changing it to scan_local_segment(),
998             as well as making scan_local_segment() self-reentrant, plus
999             adding portable code to scan for available network interfaces
1000             for their IP/broadcast(ptp) pairs, that are later used to scan
1001             segments via scan_local_segment(). Thanks to Dan J. Bernstein
1002             for an effort in writing portable SIOCGIFCONF-related code;
1003             the current implementation is based on his ipme.c from Qmail.
1004             No more using 255.255.255.255 as broadcast as well as source
1005             IP scanning. Results are now accurate even on routers with
1006             multiple network interfaces of different types. The current
1007             ap_search() has been verified/tested with W-Link WEN2021
1008             and Tellus TWL-A14 APs on Linux 2.2/2.4 and FreeBSD 4.9 .
1009           - the progress is now verbose:
1010             - each AP is shown immediately as soon as it is found
1011             - the screen is realtime-updated with information about network
1012               interface index, its name and AP type, currently scanned for
1013           - it is now possible to quit from scanning process by pressing
1014             'q' or 'Q' whenever user wants to
1015           - do not attempt to connect to an AP by pressing a key with index
1016             of AP that is not present in the 'found' table
1017         * src/oui.c: added OUIs:
1018           - 000C30 (Cisco)
1019           - 000C41 (The Linksys Group, Inc.)
1020         * configure.in: added check to determine whether the (struct sockaddr)
1021           has 'sa_len' member, and if it has, #define HAVE_SA_LEN in order to
1022           properly support network interface detection on 4.4BSD-ish systems.
1023           Moved AC_CONFIG_AUX_DIR macro behind AC_INIT, to satisfy
1024           newer autoconf. Also, moved template definition from acconfig.h here.
1025         * acconfig.h: deleted (deprecated for newer autoconfs)
1026         * src/menu.c: added hooks for keys, 'q' / 'Q', Home (PageUp), and
1027           End (PageDown)
1028         * src/set_community.c: use get_pass() for now instead of get_value(),
1029           so that the passwords are hidden when someone types them in.
1030           We should really use get_value() for this later, and make
1031           the password hiding optional.
1032
1033 2003-10-21 Roman Festchook
1034         * configure.in: version 1.3.3, added "thank you" message
1035         * src/common.c: falling back to firstly implemented AP type autodetection order - firstly searching for ATMEL410, by default ATMEL12530
1036         * NEWS: main changes added
1037
1038 2003-08-14 Roman Festchook
1039         * configure.in: version 1.3.3-pre3
1040
1041 2003-09-08 Jan Rafaj
1042         * README: added several APs to the table of supported hardware
1043         * lib/ap-utils.h, src/ap-config.c, src/auth_mac.c: AuthMAC()
1044           renamed to atmel_auth_mac()
1045         * lib/ap-utils.h, src/input.c, src/test.c, src/set_community.c,
1046           src/wep.c, src/wlan.c, src/auth_mac.c, src/bridge.c, src/common.c,
1047           src/file.c, src/nwn_advanced.c, src/radio.c:
1048           - get_value(): rewritten; now embeds the bounds as well as
1049             pressed key checking. The range boundaries, the desired type
1050             of input with respect to the acceptable characters, and the
1051             pointer to a message to be restored, when a warning about
1052             exceeded boundary is printed in the bottom stripe, are accepted
1053             as four additional parameters now.
1054           - get_ip(), get_mask(): newly introduced
1055           - get_ip(), get_mac(): based on get_value(), with additional
1056             bounds checking tailored accordingly and moved here from
1057             src/bridge.c
1058           - get_mask(): based on get_ip() with additional mask correctness
1059             checking code moved here from src/bridge.c
1060           - all the above functions were used to replace the respective
1061             original input functions to match the changed prototypes
1062           - the generic message 'Invalid value...' has been replaced
1063             with 'Value must be in range %i - %i...'. This is printed
1064             in bold-white/red in bottom stripe if the user input value
1065             exceeds the predefined boundaries.
1066           - added inet_aton()-specific includes to lib/ap-utils.h,
1067             and removed elsewhere for multiple reasons
1068         * src/wlan.c: fixed code displaying the ESSID - upon its change,
1069           previously it could happen that if a newly written ESSID
1070           would be shorter than the previous one, the loop that has been used
1071           to display ESSID would [erroneously] expect the string to be
1072           finished with '\0' (which is not required due to operESSIDLength),
1073           and would display garbage with content of and length up to an
1074           old ESSID string
1075
1076 2003-08-27 Jan Rafaj
1077        * README: fixed/added some supported AP hardware entries
1078        * lib/ap-utils.h, src/ap-config.c, src/bridge.c, src/radio.c,
1079          src/set_community.c, src/sysinfo.c, src/test.c, src/wep.c,
1080          src/wlan.c: hopefully the last round of changes in naming
1081          convention
1082        * src/bridge.c, src/wlan.c:
1083          utility now distinguishes some extra MIB subtypes: for 410 enter-
1084          prises MIBs: "SmartBridges" form, and for 12350 enterprises MIBs:
1085          "Tellus" MIB form "prototype". The MIB form is being distinguished
1086          based on the OUI part of MAC address of the device.
1087          Other than those MIBs named above are considered "generic"
1088          forms, becouse are very ubiquitous.
1089          This procedure is necessary, becouse despite the fact that
1090          many MIBs keep the same enterprises ID, they differ slightly
1091          in OID structures (some OIDs are in one MIB and not in other,
1092          and same OIDs even may have significantly different meaning -
1093          this is a case of Tellus A14 MIB x NetGear ME102 MIB, f.e.).
1094          So, unfortunately, there's no other way, but:
1095          - make some MIB "prototypes" (aggregate those that contain
1096            exactly the same information, based on the supported
1097            AP models across all the device manufacturers)
1098          - determine the correct MIB based on the OUI part of MAC
1099            address of the device (we assume noone changes OUI part
1100            of the MAC of his AP)
1101          It is quite possible that this approach will need revision
1102          in the future, but since there appears to be no 100% reliable
1103          way of how to distinguish different device models of one
1104          specific manufacturer, the above is currently the finest,
1105          although still coarse enough, method to support most devices.
1106        * src/bridge.c:
1107          - 'Preferred BSSID' keys rebound from 'm/M' to 'r/R'
1108          - 'Forward broadcast traffic' keys rebound from 't/T' to 'r/R'
1109          - introduced new setting 'Trap-sending port(s)', and bound to 't/T'
1110            key. This setting appears only if ATMEL12350 device with
1111            "Tellus Group Co." OUI is detected.
1112        * src/wlan.c:
1113          - fixed 'Beacon period' input/output data formatting/displaying
1114          - display/snag/set 'Beacon period' and 'DTIM sending interval'
1115            options/their values only if the device uses "generic"
1116            ATMEL12350 MIB prototype (that of NetGear ME102 for example).
1117            This should fix crashing becouse of missing MIB OIDs for people
1118            that use this kind of devices.
1119
1120 2003-08-25 Roman Festchook
1121         * lib/ap-utils.h, configure.in: FreeBSD compile time fixes
1122
1123 2003-08-19 Roman Festchook
1124         * src/ap_search.c: fixed getch delay and restoring current connect options when quiting search screen
1125
1126 2003-08-18 Jan Rafaj
1127         * README, THANKS: modified
1128         * most of string #defines moved from lib/ap-utils.h to the corresponding
1129           modules in src - lib/ap-utils.h should keep just those that are
1130           common to more than 1 module
1131         * src/aps.c:
1132           - fix bound-checking condition. Some APs with older ATMEL firmware
1133             actually provide less space than 16 APs in its KnownAP reply,
1134             and we also need to check for condition when lvalue of next MAC
1135             entry in the response table is 0 (means end of statistics)
1136           - only rewrite the current bridge_mode to 3 (AP client) if the
1137             AP is ATMEL12350 type
1138         * src/auth_mac.c, src/bridge.c, src/nwn_latest.c, src/sysinfo.c,
1139           src/test.c, src/wep.c, src/wlan.c:
1140           - stripped the formatting characters from remaining string #defines
1141           - made the displaying value in 'Feature: value' dependant on offset
1142             computed through strlen() from #defined string - this way,
1143             the internationalisation is eased becouse translators dont need
1144             to keep with original english strings size
1145         * src/bridge.c: implemented new functionality from ATMEL 12350 MIB for:
1146           - Configuration-enabled port(s)
1147           - ForwardBroadcast
1148           - SendBackBcast
1149           - SendBackUnicast
1150         * src/input.c: enhanced get_mac() for checking invalid MAC values
1151           that user may type in; if he does, print generic error and loop
1152           unless user gives syntactically correct value.
1153         * src/radio.c: changed the 'Key' to '[key]' in bottom message for
1154           uniformity.
1155         * lib/ap-utils.h, src/sysinfo.c, src/wlan.c: renamed CFG_STRUCT_
1156           {ATMEL410,ATMEL12350} to SysDeviceInfo_{ATMEL410,ATMEL12350}
1157         * src/wlan.c: corrected offset of displayed values for features:
1158           - InterRoaming
1159           - BeaconPeriod
1160           - DTIM
1161
1162 2003-08-14 Roman Festchook
1163         * src/common.c: changed AP type autodetection order - firstly searching for ATMEL12350, by default ATMEL410
1164         * configure.in: version 1.3.3-pre2
1165         * src/aps.c: fixed connecting to choosen AP on ATMEL12350 APs in not AP Client mode
1166
1167 2003-08-14 Elros Cyriatan
1168         * po/nl/po: New Dutch PO file for `ap-utils'
1169
1170 2003-08-11 Jan Rafaj
1171         * next round of spelling and indentation fixes
1172         * src/aps.c:
1173           - made the 'KnownAP' statistics available only if the Access Point
1174             is in AP client mode [original behaviour]. Some Access Points
1175             may keep the statistics in their RAM, but no update is performed.
1176             Even, sometimes, their RAM may contain garbage after reset,
1177             which would cause parsing problems.
1178         * lib/ap-utils.h, lib/reset.c, src/ap-config.c, src/ap-mrtg.c,
1179           src/ap_search.c, src/aps.c, src/auth_mac.c, src/bridge.c,
1180           src/cmd.c, src/common.c, src/radio.c, src/set_community.c,
1181           src/stat.c, src/stations.c, src/sysinfo.c, src/test.c,
1182           src/wep.c, src/wlan.c:
1183           - changed all occurences of 'ATMEL' to 'ATMEL410' and
1184             for 'ME102' to 'ATMEL12350'
1185         * lib/ap-utils.h, src/ap-config.c, src/sysinfo.c:
1186           - renamed sysinfo() to atmel_sysinfo()
1187         * lib/ap-utils.h, src/ap-config.c, src/wlan.c:
1188           - renamed wireless() to atmel_wireless()
1189         * src/ap-config.c:
1190           - redefined color pair 2 (black ink, green background), and defined
1191             new color pair 3 (black ink, green background), and color
1192             pair 4 (white ink, red background). 2 is used for showing
1193             all string values actually changed by the user; 3 is used
1194             for displaying column-info stripe in aps.c, and 4 is used
1195             to display error-related messages in bottom status stripe.
1196         * src/input.c:
1197           - get_value() modified
1198         * src/scr.c, lib/ap-utils.h:
1199           - added new function print_menusel().
1200             Prints a message split up to two parts - first part without
1201             colors, second part in bright. Used in conjunction with get_value()
1202             to display parameters that the user modified, in bold.
1203           - added new function print_helperr(). This is basically the same
1204             as print_help(), with the only difference that it prints
1205             the text in white bold on red background. Uses color pair 4
1206             and bold attribute; see above.
1207         * names of all print_help() functions related to printing error
1208           messages have been changed to print_helperr()
1209         * src/auth_mac.c, src/bridge.c, src/radio.c, src/test.c, src/wep.c,
1210           src/wlan.c, lib/ap-utils.h:
1211           - implemented new colorisation scheme using print_menusel()
1212             and get_value(), get_mac() - if user enters a new value,
1213             the maximum space (in character counts) that can be used,
1214             is displayed in inverse color. As soon as user confirms
1215             the new value by pressing enter, the changed value is displayed
1216             in bold (so that he knows what he has actually changed).
1217         * src/bridge.c:
1218           - when entering AP's IP, mask and gateway, do not allow
1219             to pass further if the user input is invalid - instead, loop unless
1220             user enters valid information
1221           - hardened bounds checking against correct netmask value;
1222             now, invalid netmasks like 255.255.255.129 elicits error
1223             and forces prompt for new value, too
1224         * lib/ap-utils.h, src/ap-mrtg.c, src/ap_search.c: placed
1225           conditinal GLIBC checks => ap-utils now compile/run even
1226           on non-GLIBC (LIBC5-based and such) systems, hopefully.
1227           Actually it has only been tested with libc5-based Linux
1228           system.
1229         * lib/ap-utils.h, src/ap-mrtg.c, src/ap-trapd.c: placed conditional
1230           HAVE_GETTEXT checks around parts using gettext, to get
1231           ap-utils compile on systems without gettext support
1232         * lib/snmp.c, src/file.c: external declaration of ap_type datatype
1233           unified as 'short' and made global to make some old
1234           GNU C compilers happy
1235
1236 2003-08-07 Roman Festchook
1237         * src/brige.c: fixed bug when saving changed ip, netmask and gw
1238
1239 2003-08-07 Jan Rafaj
1240         * various spelling and indentation fixes here and there
1241         * all the ATMEL 12350-specific stuff below has been modelled
1242           using Tellus A14 AP.
1243         * src/aps.c:
1244           - made it malloc()-free. no more potential leaks.
1245           - 'KnownAP' now works for ATMEL 12350-based APs too
1246           - allow of up to 16 concurrent APs to be displayed
1247             in the 'KnownAP', as the packet itself may carry
1248             up to 16 records (768/48). This is also a fix
1249             becouse up to now, the menu has shown just the first
1250             AP entry.
1251           - The button for 'refresh without reset', originally bound to
1252             'g' and 'G' key, has been rebound to 's' ('S') key,
1253             since the keys a-g (A-G) are now used as keys, corresponding
1254             to numbers 10-16 of the APs displayed, when used in
1255             '# connect to this AP' command.
1256           - enhanced '# connect to this AP' functionality for
1257             also setting the appropriate channel through operChannelID
1258             OID
1259           - disallow connection to Ad-Hoc mode bridges
1260           - fixed bad effect of displaying 'Writing data to AP'
1261             after pressing AP number, even if the number of the
1262             selected AP is not actually present in the table
1263           - changed the color scheme to some more eye-pleasant values
1264           - implemented 4 different "views", that can be toggled
1265             via 't' ('T') key:
1266             * view 1: - most usual one; with RSSI and LQ in %
1267                         [ATMEL utility view]
1268             * view 2: - the same as 1; except that RSSI is displayed
1269                         in dBm and LQ in raw
1270             * view 3: - ESSID shown expanded to full length,
1271                         no NetworkType; RSSI displayed in raw,
1272                         LQ displayed in raw
1273             * view 4: - shown only BSSID, and its hardware manufacturer
1274           - the 'KnownAP' statistics is available without reset
1275             if the Access Point is either in any of APclient or AP modes,
1276             not just when it is in APclient mode.
1277         * lib/ap-utils.h:
1278           - HARD_CONFIGURATION_STRUCT is now replaced with two new
1279             structures: CFG_STRUCT_ATMEL (for ATMEL 410-based devices),
1280             and CFG_STRUCT_ME102 (for ATMEL 12350-based devices).
1281         * src/sysinfo.c:
1282           - sysinfo() made malloc()-free, and made both ATMEL 410-
1283             and ATMEL 12350-aware => SysInfo for APs of both ATMEL types
1284             is now displayed correctly
1285         * src/oui.c:
1286           - added OUI 000CCE (Cisco Systems)
1287         * lib/ap-utils.h, src/wlan.c:
1288           - made it fully ATMEL 410- and ATMEL 12350-aware
1289             (displaying/setting of additional InterRoaming, BeaconPeriod
1290             and DTIM parameters in case of ATMEL12350). Note that
1291             it is possible to regulate BeaconPeriod in range 0-65407
1292             and DTIM in range 0-255, but the boundary limits may vary
1293             with different hardware. I've tried to make as broad
1294             range coverage as possible. Anyway, for example, Tellus A14
1295             resets the BeaconPeriod internally to 100, if you write
1296             it with value out of 1-1000 interval.
1297           - rebound key for ESSID from 'd' ('D') to 'e' ('E')
1298
1299 2003-07-26 Roman Festchook
1300         * src/ap_search.c, src/common.c: changed AP types ATMEL to ATMEL410 and ME102 to ATMEL12350
1301         * src/common.c: added AP type autodetection - by default ATMEL12350
1302         * src/common.c, src/ap_search.c, lib/ap-utils.h: now its possible to choose working AP from AP search result
1303         * po/uk.po: updated translation
1304         * lib/ap-utils.h, src/brige.c: bigendian fixes when setting ip, netmask and gw
1305         * configure.in: version 1.3.3-pre1
1306
1307 2003-06-20 Roman Festchook
1308         * configure.in, acconfig.h, lib/ap-utils.h: small fix to compile under OpenBSD
1309         * po/*.po: fixed some fuzzy translations
1310         
1311 2003-06-03 Eugen Hoanca
1312         * po/ro.po, configure.in: added Romanian translation
1313
1314 2003-05-28 Roman Festchook
1315         * configure.in, NEWS: version 1.3.2
1316
1317 2003-05-26 Roman Festchook
1318         * config/config.guess, config/config.sub: updated from latest autoconf
1319
1320 2003-05-21 Roman Festchook
1321         * README: new supported AP added
1322         * configure.in: version 1.3.2-pre4
1323
1324 2003-05-20 Roman Festchook
1325         * src/ap-mrtg.c: fix bug like 2003-05-20 Peter 'p2' De Schrijver patch fixes
1326
1327 2003-05-20 Peter 'p2' De Schrijver
1328         * src/auth_mac.c, src/stat.c, src/sysinfo.c, lib/ap-utils.h: patch to fix ap-config for 64bit archs such as the alpha. It also fixes a minor bug on big endian machines. Patch tested on alpha, ia32, parisc and powerpc.
1329
1330 2003-04-29 Michel Robitaille 
1331         * po/fr.po: updated translation
1332
1333 2003-04-28 Roman Festchook
1334         * README: new supported APs added
1335         * src/auth_mac.c: small compile error with old gcc fixed
1336
1337 2003-04-26 Roman Festchook
1338         * README: new supported APs added
1339
1340 2003-04-15 Roman Festchook
1341         * po/pl.po: updated translation
1342         * lib/Makefile.am: not used code exluded for faster compilation
1343         * lib/ap-utils.h: code rearangement
1344         * src/scr.c: some updates for more faster screen handling
1345         * configure.in: version 1.3.2-pre3
1346
1347 2003-04-15 Przemyslaw Stanislaw Knycz
1348         * po/pl.po: fix to correct displaying polish chars
1349
1350 2003-03-13 Roman Festchook
1351         * README: new supported AP from SVEC
1352
1353 2003-02-27 Roman Festchook
1354         * FAQ: updates
1355
1356 2003-02-26 Roman Festchook
1357         * lib/*, src/*, README: added support fpr new Netgear ME102 enterprase in old Atmel mib (ME102 type)
1358         * configure.in: version 1.3.2-pre2
1359
1360 2003-02-25 Roman Festchook
1361         * README: new supported hardware from DCom removed (it's WLink hardware:)
1362
1363 2003-02-23 Roman Festchook
1364         * README: new supported hardware from DCom
1365
1366 2003-02-23 Roman Festchook
1367         * src/menu.c, src/input.c: added new vi-like keys to menu movement
1368         * Documentation/ap-config.8: added info about vi-like keys to menu movement
1369         * configure.in: version 1.3.2-pre1
1370
1371 2003-02-14 Roman Festchook
1372         * TODO: support for ME102 new mib
1373         * configure.in, NEWS: version 1.3.1
1374
1375 2003-02-11 Roman Festchook
1376         * src/wep.c, src/wlan.c: fixed for warnins when compiling by egcs-2.91
1377
1378 2003-02-08 Roman Festchook
1379         * src/common.c: removed unnecessary debug message 
1380
1381 2003-02-06 Roman Festchook
1382         * src/input.c, src/mac_auth.c, src/bridge.c. src/nwn_latest.c, src/sysinfo.c, lib/ap-utils.h: mac adresseses now dysplayed and entered like XXXXXXXXXXXX
1383         * Documentation/FAQ: added info about new ME102 AP
1384         * src/ap-search.c: fixed bug with closing sock descriptor after making search - what make impossible working with current AP without reconnect
1385
1386 2003-02-04 Roman Festchook
1387         * src/file.c: fixed updating options file bug
1388
1389 2003-02-03 Roman Festchook
1390         * src/wep.c, Documentation/ap-config.8: added info about WEP key values
1391
1392 2003-01-10 Roman Festchook
1393         * src/common.c: fixed options file name mismatch
1394
1395 2002-12-22 Roman Festchook
1396         * src/file.c: added keys for fast selecting one from first 9 APs, fixed coredump when parsing file in wrong format
1397         * po/uk.po: updated translation
1398
1399 2002-12-16 Roman Festchook
1400         * src/ap-mrtg.c: command line parameters parsing small fix
1401
1402 2002-12-15 Roman Festchook
1403         * configure.in: build cleanups
1404         * src/file.c, src/common.c: now connect option for many APs can be stored in file and current AP can be choosed from it
1405         * src/*, lib/*: many code cleanups and fixes
1406
1407 2002-12-10 Roman Festchook
1408         * configure.in, src/Makefile.am: fixes to build on OpenBSD
1409         * README: new supported OS OpenBSD
1410
1411 2002-12-05 Roman Festchook
1412         * README: supported hardware table updated
1413         * configure.in, NEWS: version 1.3
1414
1415 2002-12-02 Roman Festchook
1416         * src/ap-mrtg.c: fixed printing warning in non verbose mode when getting Link Quality stats
1417         * src/ap-mrtg.c, man/ap-mrtg.8: Signal Strenght returned in dBm
1418
1419 2002-11-25 Roman Festchook
1420         * man/ap-config.8: removed dead link
1421
1422 2002-11-25 Wolfgang Fuschlberger
1423         * Documentation/Ovislink-HOWTO.html: updated howto
1424
1425 2002-11-20 Roman Festchook
1426         * configure.in: defined LIBS and INSTALL variables to compile under QNX (nto-qnx)
1427         * INSTALL: updated with info about installing on QNX
1428         * README: new supported OS added
1429         * src/Makefile.am, configure.in: removed checking for ncurses libs and LIBS difinition moved to Makefile (I think its wrong but useful:)
1430         * src/aps.c, man/ap-config.8: RSSI now displayed in dBm (thanks to Ivan Korshun)
1431         * po/*.po: translations updates
1432
1433 2002-11-11 Michel Robitaille
1434         * po/fr.po: updated french translation
1435
1436 2002-11-10 Roman Festchook
1437         * man/*.8: removed referrer to ap-atmel and ap-nwn
1438
1439 2002-11-10 Dan Pelleg
1440         * src/wlan.c: patch to build on FreeBSD
1441
1442 2002-11-04 Wolfgang Fuschlberger
1443         * Documentation/Ovislink-HOWTO.html: howto use ap-utils with Ovislink hardware
1444         * README: new supported hardware from Ovislink
1445
1446 2002-11-01 Wojciech Puchar
1447         * po/pl.po: polish localization
1448
1449 2002-11-01 Roman Festchook
1450         * lib/common.c, po/*.po: spelling fixes 
1451
1452 2002-10-31 Roman Festchook
1453         * src/aps.c: fixed getting info from APs manufactured by CC&C Technologies
1454         * po/*.po: translations updates
1455
1456 2002-10-30 Roman Festchook
1457         * README: new supported hardware
1458         * src/aps.c: check for right channel added
1459
1460 2002-10-29 Rahul G
1461         * lib/ber.c: function to ber encode object identifiers added
1462
1463 2002-10-24 Roman Festchook
1464         * configure.in, NEWS: version 1.2
1465
1466 2002-10-21 Pawel P. Kaszynski
1467         * README: new supported hardware from Intellinet
1468
1469 2002-10-17 Michel Robitaille
1470         * po/fr.po: updated french translation  
1471
1472 2002-10-15 Roman Festchook
1473         * configure.in: more fixes to compile under netbsd
1474
1475 2002-10-11 Roman Festchook
1476         * lib/common.c: added option to disable saving connect options to file
1477
1478 2002-10-10 Roman Festchook
1479         * src/wlan.c: fixed fail to set essid because wrong len
1480         * Documentation/mib/atmel: new mib added form airBrige device
1481         * src/ap-trapd.c, man/ap-trapd.8: added support for Smartbridges
1482         airBrige traps, run utility with -s key
1483         * src/brige.c: added support for Smartbridges airBrige speciffic oid
1484
1485 2002-10-09 Roman Festchook
1486         * src/brige.c: added check for getted from AP values
1487         * configure.in: added CC variable to compile under netbsd
1488         * README, INSTALL, mib/ap-config.8: updates about merging utilites to ap-config
1489
1490 2002-10-07 Roman Festchook
1491         * src/ap-config.c, lib/common.c, lib/ap-search.c: connect and
1492         search procedure updates
1493
1494 2002-10-07 Dan Pelleg
1495         * lib/ap-search.c: fix to compile under FreeBSD 
1496
1497 2002-10-03 Roman Festchook
1498         * src: ap-nwn and ap-atmel merged to one utility ap-config
1499         * lib/snmp.c: decreased timeout waiting for reply from agent - in general it result more faster read SNMP data
1500
1501 2002-10-02 Roman Festchook
1502         * common/ap-search.c: socklen_t variables redefined to uint32_t for build package under MacOS-X 
1503         * common/file.c: char variable j redefined as unsigned to socessful build where char is per default unsigned on arm, powerpc and s390.
1504         * nwn/wlan.c: form handling code cleanups, fixed display refreshing after changing antenna and rate options
1505         * README: new supported hardware
1506         * configure.in, NEWS: version 1.1.1
1507
1508 2002-09-29 Roman Festchook
1509         * nwn/advanced.c, man/ap-nwn.8: added some advanced options to optimize long range links and antenna tuning
1510
1511 2002-09-28 Roman Festchook
1512         * atmel/aps.c: now after setting master AP from displated list also setted mode to AP client and ESSID to master AP ESSID, also now AP resets when getting stat only if brige mode = Access Point
1513         * nwn/reset.c, nwn/ap-nwn.c: added option to reset AP
1514         * atmel/wep.c: WEP encryption after fixes works - tested WEP64 crypted link between CompexWP11 and GL2411AP as client
1515         * atmel/ap-trapd.c, man/ap-trapd.8: updated traps list with new traps from 1.4j.1 firmware
1516         * atmel/brige.c: added Repeater mode to Brige modes
1517         * nwn/nwn.c: now possible to define 4 WEP keys and choose default key
1518
1519 2002-09-26 Roman Festchook
1520         * atmel/ap-mrtg.c: small fixes about link quality displaying
1521         * atmel/ap-trapd.c: small log format changes
1522         * README: new supported hardware Smartbridges airBrige and airPoint
1523
1524 2002-09-20 Roman Festchook
1525         * configure.in, NEWS: version 1.1
1526
1527 2002-09-19 Roman Festchook
1528         * atmel/aps.c: interface updates
1529         * po/uk.po, po/fr.po: small translations update
1530
1531 2002-09-19 Andy Igoshin
1532         * atmel/radio.c: now wors fin on big_andian
1533
1534 2002-09-17 Andy Igoshin
1535         * common/ap-utils.h, atmel/wlan.c: basic rates display fix
1536         * man/*.8: man page formatting updates
1537
1538 2002-09-17 Roman Festchook
1539         * nwn/stations.c: rewrited code that get associated stations info to avoid problems with invisible stations
1540         * nwn/stations.c, atmel/stations.c: fixed display last value problem
1541         * po/uk.po, po/fr.po: small translations update
1542         
1543 2002-09-16 Roman Festchook
1544         * nwn/stations.c, atmel/aps.c, man/ap-atmel.8, man/ap-nwn.8: display linkquality and signal strenght without any modification on returned values, documentation updates about it
1545         * po/uk.po: translation update
1546         * atmel/aps.c: added option to connect to one of the displayed known APs, also now possible reget and refresh (with reset) stats
1547         * atmel/ap-mrtg.c, man/ap-mrtg.8: aded option to reset AP when getting link quality stats, documentation updates about it, also after reset 10 second timeout set
1548
1549 2002-09-15 Andy Igoshin
1550         * atmel/ap-mrtg.c, atmel/aps.c, atmel/bridge.c, atmel/cmd.c, atmel/stat.c,
1551           atmel/stations.c, atmel/wep.c, atmel/wlan.c, common/ap-utils.h: code cleanups
1552         * nwn/sysinfo.c: code cleanups
1553
1554 2002-09-12 Andy Igoshin
1555         * configure.in: small fix for AIX
1556         * atmel/auth_mac.c, atmel/wep.c: case statement code cleanups
1557         * atmel/auth_mac.c: now works good with big_endian
1558         * common/ap-utils.h: additional macros for data conversion on big_endian
1559         * atmel/brige.c: removed any ip adderess converting on big-endian arch
1560         * atmel/wep.c: now encryption enable and key num works good with big_endian
1561         
1562 2002-09-12 Roman Festchook
1563         * nwn/sysinfo.c: removed any ip adderess converting on big-endian arch
1564         * atmel/auth_mac.c: changed type to mib defined
1565         * common/ap-utils.h: swap2 definition to little_endian arch
1566         * atmel/wep.c: some variables declaration moved to up to compile on old gcc compilers
1567
1568 2002-09-11 Roman Festchook
1569         * atmel/wlan.c: fixed unpackeing RegulatoryDomain on big_endian computers
1570         * atmel/bridge.c, nwn/sysinfo.c: fixed ip adderess converting on big-endian arch
1571
1572 2002-09-11 Andy Igoshin
1573         * atmel/sysinfo.c: fixed displaying RegulatoryDomain on big_endian computers
1574         * configure.in: OS definition now standart macro, AIX compilation options  
1575         * atmel/auth_mac.c: mac auth foxes for big_endian
1576
1577 2002-09-08 Andy Igoshin
1578         * atmel/Makefile.am, common/Makefile.am, common/ap_search.c,
1579           common/menu.c, common/scr.c, nwn/Makefile.am: patch to compile
1580           by native compiler under AIX 4.3.3
1581
1582 2002-09-08 Roman Festchook
1583         * README: new supported hardware Micronet SP918 and OS AIX 4.3.3 added
1584         * configure.in, common/ap-utils.h, acconfig.h: now big_endian defined
1585          using standart configure macro AC_C_BIGENDIAN (thanks Andy Igoshin
1586          for suggection)
1587
1588 2002-09-06 Roman Festchook
1589         * atmel/bridge.c, nwn/sysinfo.c: fixed ip adderess displaying on big-endian arch
1590         * README: new supported OS MacOS-X
1591         * configure.in: new big_endian arch Power Macintosh
1592
1593 2002-09-04 Roman Festchook
1594         * nwn/wlan.c, atmel/wlan.c: fixed setting channel bug under
1595             Spain and France regulatory domain
1596         * man/nwn.8: additional info about Search AP option
1597         * README: new supported hardware Dlink-1000AP
1598         * nwn/auth_mac.c: displaying mac autorization status fixed
1599
1600 2002-09-02 Roman Festchook
1601         * configure.in, NEWS: version 1.0.5
1602         * po/uk.po: ukrainian translation updates
1603
1604 2002-08-29 Roman Festchook
1605         * atmel/ap-mrtg.c, man/ap-mrtg.8, aclocal.h, configure.in, INSTALL: enable report to MRTG when unable to get stats 
1606         from AP now sturtup option, also command line arguments now parse using getopt() in ap-mrtg
1607         * atmel/ap-trapd.c, man/ap-trapd.8, aclocal.h, configure.in, INSTALL: option to change defaul unprivileged user
1608         now sturtup option, also command line arguments now parse using getopt() in ap-trapd
1609         * atmel/brige.c: entering AP mac address in Client mode fix
1610         * common.c, configure.in: macro for check big-endian arch (sparc and mips) now set variable AP_BIG_ENDIAN
1611
1612 2002-08-28 Roman Festchook
1613         * atmel/*.c, nwn/*.c, common/*.c: getting pressed key fixes to avoid reactions to neutral keys pressed by user
1614
1615 2002-08-28 Michel Robitaille 
1616         * po/fr.po: french localization
1617
1618 2002-08-27 Roman Festchook
1619         * atmel/stat.c, atmel/test.c, atmel/sysinfo.c, nwn/stat.c: applayed macro swap4 from Erik Rossen for display long values
1620         * configure.in: macro for check big-endian arch (sparc and mips) added
1621
1622 2002-08-27 Erik Rossen
1623         * common/ap-utils.h: added swap4 - a quick-and-dirty macro to unconditionally swap bytes in 4-byte integers between big-endian and little-endian ordering
1624         * INSTALL: instruction to compile under Sparc Linux
1625
1626 2002-08-26 Roman Festchook
1627         * README: updates and spelling
1628         * atmel/test.c: user interface in test mode improvements and fallback when error reading test stat from AP now will not quit tests to make possible restoring normal AP functionality, regulation domain restriction removed
1629
1630 2002-08-19 17:42  Dan Pelleg
1631         * nwn/ap-nwn.c: minor change for compile under FreeBSD 
1632
1633 2002-08-08 22:56  Roman Festchook
1634         * configure.in, NEWS: version 1.0.4
1635
1636 2002-08-02 20:29  Roman Festchook
1637         * configure.in: moved configuration utilites into config dir 
1638         * atmel/*.c: code rewrited to don't use struct to unpack data that
1639          comes from network (as suggect Erik Rossen its may fix problems
1640          running utility on nonintel computer architectures).
1641
1642 2002-07-24 01:06  Roman Festchook
1643         * configure.in, common/common.c, acconfig.h, INSTALL: added compile
1644          time option to disable regulation domain channel restrictions
1645
1646 2002-07-22 00:02  Roman Festchook
1647         * man/ap-atmel.8, man/ap-nwn.8: added manpages for ap-atmel and ap-nwn
1648
1649 2002-07-21 20:02  Roman Festchook
1650         * man/ap-trapd.8, man/ap-mrtg.8: added manpages for ap-trapd and ap-mrtg
1651
1652 2002-07-21 15:06  Roman Festchook
1653         * nwn/stations.c, atmel/auth_mac.c: getting data from AP algorithms
1654          optimization
1655
1656 2002-07-21 01:24  Roman Festchook
1657         * common/oui.c: added displaying AP manufacturer using OUI value
1658         * README: spelling fixes
1659
1660 2002-07-18 14:53  Roman Festchook
1661         * nwn/stations.c: added info about waiting for data when getting
1662          data from AP
1663
1664 2002-07-16 01:04  Roman Festchook
1665         * configure.in: version 1.0.3
1666         * common/ap_search.c, common/set_community.c: code of search and auth
1667          functions moved into common for both utilites functions
1668         * Makefile.am: now packages will be compressed by bzip2 (to save
1669          bandwith)
1670
1671 2002-07-15 19:31  Roman Festchook
1672         * common/scr.c, common/common.c, common/ap-utils.h: added info about
1673          current AP at right bottom of the screen
1674
1675 2002-07-14 00:20  Roman Festchook
1676         * po, intl, m4: integration with GNU gettext for simlying localization
1677          and translation
1678         * src: a lot of internal code optimization and spelling
1679         * nwn/search.c: AP search fixes
1680         * po/uk.po: ukrainian localization
1681
1682 2002-07-07  gettextize  <bug-gnu-gettext@gnu.org>
1683         * Makefile.am (SUBDIRS): Add intl.
1684         (ACLOCAL_AMFLAGS): New variable.
1685         (EXTRA_DIST): New variable.
1686         * configure.in (AC_OUTPUT): po/Makefile.in, m4/Makefile.
1687
1688 2002-07-07 05:20  Roman Festchook
1689         * ap-trapd: log additiomal info about agent that generate trap
1690
1691 2002-07-05 02:00 Roman Festchook
1692         * common/ap-cnf.h, *.c: common/ap-cnf.h renamed to common/ap-utils.h
1693         * nwn/menu.c, atmel/menu.c, common/menu.c, common/ap-utils.h,
1694          common/Makefile.am: menu handling code rewrited to one universal
1695           routine
1696
1697 2002-07-04 15:44 Roman Festchook
1698         * configure.in: version 1.0.2
1699
1700 2002-06-29 20:15 Roman Festchook
1701         * nwn/search.c: error messages fixes
1702         * configure.in: added test for Linux
1703         * atmel/ap-trapd.c: fixed displaying new IP when SettingPingIPAddress
1704          trap received, also displaying mac address limited to related traps, 
1705          bind to device code compiled only at Linux
1706         * Documentation/README.trapd: info about bind to device option code
1707          work only at Linux
1708         * Documentation/THANKS: new contributor Dan Pelleg
1709         * common/ap-cnf.h, README: changed project name to Wireless Access
1710          Point Utilites for Unix
1711
1712 2002-06-28 17:14 Roman Festchook
1713         * atmel/Makefile.am, nwn/Makefile.am, common/Makefile.am: added options
1714          to compile on FreeBSD
1715
1716 2002-06-28 16:45 Dan Pelleg
1717         * atmel/ap-atmel.c, atmel/ap-mrtg.c, atmel/ap-trapd.c, atmel/bridge.c,
1718         atmel/radio.c, atmel/search.c, common/common.c, common/file.c,
1719         common/snmp.c, nwn/ap-nwn.c, nwn/search.c, nwn/sysinfo.c, nwn/wlan.c:
1720          patch to compile and run on FreeBSD
1721
1722 2002-06-26 15:53 Roman Festchook
1723         * configure.in: version 1.0.1
1724
1725 2002-06-24 23:40 Roman Festchook
1726         * ap-trapd: by default installed into '/usr/local/sbin'
1727         * src: code cleanups and compiler warnings fixes
1728
1729 2002-06-21 16:34 Roman Festchook
1730         * */Makefile.am: added target style
1731         * atmel/ap-mrtg: code rearangement
1732
1733 2002-06-17 09:24  Roman Festchook
1734         * README: ap-amtel does work with an D-Link DWL 900AP wich is
1735           (according to some google research it's an Linksys WAP11). Reported
1736           by Jens Link <jenslink at quux dot de>. 
1737
1738 2002-06-16 18:48  Roman Festchook
1739         * ap-trapd: added compile time option to set nonprivileged account
1740          for running utility
1741
1742 2002-06-16 03:12  Roman Festchook
1743         * Makefile: now Makefiles generated by GNU autoconf and automake
1744         * INSTALL: updated with info about new instalation procedures
1745         * ap-mrtg: added compile time option to disable warnings when unable
1746          to get data from AP
1747         * atmel/aps.c: removed unnecessary code that read/set remote brige
1748          BSSID
1749         * atmel/search.c, atmel/wlan.c, nwn/search.c, nwn/wlan.c: compile
1750          time warnings fixed
1751
1752 2002-06-15 02:10  Roman Festchook
1753         * ap-atmel: added try to restore settings when fail to get KnownAPs
1754          info
1755
1756 2002-06-09 23:33  Roman Festchook
1757         * version: 1.0
1758         * ap-mrtg: removed email from usage message
1759         * ap-mrtg and ap-trapd code: placed into atmel directory
1760         * Makefile: some optimization at subdirs and at top level
1761         * Documentation: mibs now back to package
1762         * NEWS, AUTHORS: added
1763
1764 2002-06-08 01:03  Roman Festchook
1765         * ap-trapd: fixed getting data from old trap body when processing
1766             new trap
1767
1768 2002-06-06 14:29  Roman Festchook
1769         * ap-trapd: rewriten to log shorter messages without informative
1770             data lost
1771         * Documentations: some updates for preparing to version 1.0
1772
1773 2002-06-05 00:01  Roman Festchook
1774         * ap-atmel: added warnings in potentially dangerous options:
1775                 KnownAPs, Reset, Upload, Defaults, Restore
1776
1777 2002-06-01 00:20  Roman Festchook
1778         * version: 1.0pre3
1779         * ap-mrtg: added selecting AP to which get
1780             Link Quality/Signal Strenght statistics, also updated documentation
1781
1782 2002-05-31 00:50  Scott L. Thomas, Roman Festchook
1783         * ap-mrtg: option to get Link Quality/Signal Strenght stat from AP in
1784                 client mode added
1785         * Documentation/README.mrtg: description about getting Link
1786          Quality/Signal Strenght stat from AP in client mode added
1787         * Documentation/README.nwn: added info about basic rates setting
1788         * ap-atmel, ap-nwn: added backspace support when entering password
1789
1790 2002-05-30 14:05  Roman Festchook
1791         * ap-trapd: option to bind listening for traps
1792                 on a specific interface added
1793         * Documentation/README.trapd: option to bind listening
1794             for traps on a specific interface described
1795         * Documentation/README.nwn: added info about associated stations
1796
1797 2002-05-29 19:30  Roman Festchook
1798         * ap-nwn: fixed basic rates, AP name and ESSID displaying
1799         * ap-atmel, ap-nwn: some optimization for size 
1800         * snmp.c: memory leaks fixes when parsing received packets
1801         * ap-nwn: uptime displaying fixed
1802
1803 2002-05-27 00:03  Roman Festchook
1804         * version: 1.0pre2
1805         * ap-atmel: added Regulation domain restriction to select channel
1806          in Test Mode
1807         * ap-atmel, ap-nwn: added floating dropdown menus for choose from
1808          the list of options
1809
1810 2002-05-26 16:45  Roman Festchook
1811         * ap-nwn: fixed lenght bug in setting AP name
1812
1813 2002-05-25 14:05  Roman Festchook
1814         * Documentation: added banner image:))
1815
1816 2002-05-22 00:19  Roman Festchook
1817         * version: 1.0pre1
1818         * Documentation: additions and spelling
1819         * src: removed unused code
1820
1821 2002-05-21 20:06  Roman Festchook
1822         * ap-nwn: added option to find connected APs
1823
1824 2002-05-20 01:37  Roman Festchook
1825         * ap-nwn: added basic rates choose options, added WEP key set options,
1826                 added setting prefered channel to operational channel value
1827         * Documentation: mibs excluded from program package (they come with
1828          devices), also excluded power hack docs (readme has links to this
1829          pages) - this greatly reduce package size:)
1830
1831 2002-05-18 19:51  Roman Festchook
1832         * ap-atmel: fixed bug with unable to repeat APs search,
1833             other search fixes and improvements
1834
1835 2002-05-17 15:51  Roman Festchook
1836         * version: 0.9.6
1837         * ap-atmel: added option to find connected APs
1838
1839 2002-05-16 00:12  Roman Festchook
1840         * atmel/aps.c: removed timeout when getting KnownAPs stat
1841             from AP in client mode
1842
1843 2002-05-15 20:57  Roman Festchook
1844         * ap-mrtg: added option to get associated stations stat
1845         * README.mrtg: info about stations stat
1846         
1847 2002-05-11 08:49  Erik Rossen
1848         * src: fixed compile time errors and warnings
1849         * atmel/scr.c, nwn/scr.c: patch to get rid of the annoying flicker
1850                 every time one changes a menu
1851
1852 2002-05-06 02:42  Roman Festchook
1853         * common/file.c: now AP ip and community string saved
1854             in config file ~/.<utility_name>, so no need to
1855             input it after each program start
1856         * common/common.c: connection password at input
1857             displayed with '*'
1858         * wlan.c: added Regulation Domain limit on setting channel
1859         * atmel/aps.c: Now KnownAP stat may be get without AP reset if AP
1860             in client mode
1861         * atmel/radio.c: Antenna checks on Atmel, so user can't disable both
1862             antenna, if he do this and save conf - AP restores factory
1863             defaults, now it fixed
1864         
1865 2002-05-05 22:39  Roman Festchook 
1866         * common/file.c: now Associated Stations list
1867             may be saved to file ~/<utility_name>.stations.
1868
1869 2002-05-04 23:26  Roman Festchook 
1870         * version: 0.9.5
1871         * README.atmel: added description of most configuration options
1872         * Documentation: updated documentations
1873         * source tree: changed structure
1874         * ap-cnf: renamed to ap-atmel
1875
1876 2002-05-04 18:46  Roman Festchook 
1877         * ap-nwn: added utility to config Compex WP11
1878
1879 2002-05-02 18:46  Roman Festchook 
1880         * ap-atmel/auth.c: fixed mac number error when deleting addresses
1881          from list
1882         * snmp.c: now returned from agent oid accessible in program
1883
1884 2002-05-01 17:43  Roman Festchook 
1885         * snmp.c: added support for Compex WP11 SNMP-agent
1886
1887 2002-05-01 13:01  Roman Festchook 
1888         * FAQ: added FAQ 
1889
1890 2002-04-30 16:40  Roman Festchook 
1891         * src/ap-trapd.c: fixed bug with SettingPingIPAddress trap message 
1892
1893 2002-04-27 00:17  Roman Festchook 
1894         * src/sysinfo.c: added description for Regulation Domain
1895
1896 2002-04-23 21:12  Roman Festchook 
1897         * version: 0.9
1898         * src/test.c: finished test mode
1899         * docs: documentation updates
1900
1901 2002-04-23 19:00  Roman Festchook 
1902         * src/radio.c: added option to enable/disable antennas
1903         * src/menu.c: small menu rearangement again:))
1904
1905 2002-04-22 17:08  Roman Festchook 
1906         * src/auth.c: fixed mac number error when deleting addresses from list
1907         * src/menu.c: small menu rearangement
1908
1909 2002-04-15 20:20 Kucherak Sergij, Roman Festchook 
1910         * version: 0.8.2
1911         * INSTALL, README.ap-cnf: added ukrainian docs
1912
1913 2002-04-15 20:01  Roman Festchook 
1914         * src/aps.c: added displaying Link Quality and Signal Strenght
1915
1916 2002-04-14 23:18  Roman Festchook 
1917         * src/stat.c: fixed bug, that cause unable to exit
1918             problem when can't to get Ethernet or Wireless stat
1919         * src/aps.c: addded showing Preamble and Wep, also fixed
1920             bug with displaying Network Type
1921         * src/test.c: added unknown OID (see doc/todo),
1922             test mode still not work
1923         * src/snmp.c: fixed some warnings from gcc version pre3    
1924
1925 2002-04-14 00:12  Roman Festchook 
1926         * src/ap-cnf.c: showing cursor when entering
1927             password/community in connect screen
1928
1929 2002-04-12 00:14  Roman Festchook 
1930         * src/auth.c: fixed displaying and setting mac authorization status
1931
1932 2002-04-07 22:32  Roman Festchook 
1933         * version: 0.8.1
1934         * src/menu.c: added printing tips to all menu options
1935         
1936 2002-04-07 13:52  Roman Festchook 
1937         * src/Makefile: added 'install' option
1938
1939 2002-04-06 23:50  Roman Festchook 
1940         * name: changed name to Access Point SNMP Utils for Linux
1941         * src/stat.c: added mac address displaying in SysInfo,
1942             correctly printed sysinfo string
1943         * README: splited docs at top level directory - added
1944             INSTALL and README.util, added additional info
1945
1946 2002-04-04 22:50  Roman Festchook 
1947         * src/ap-trapd.c: after opening socket changed UID and GID
1948             to non root user, I think it's more secure; also
1949             added check from what enterprise this trap came
1950         * src/ap-cnf.c: added info about not displayed characters
1951             when entering password/community
1952
1953 2002-04-04 01:12  Roman Festchook 
1954         * src: added info about retrieving/setting data on help string
1955         * src/aps.c: more informative help string
1956         * src/menu.c: option APs renamed to KnownAPs
1957
1958 2002-04-02 14:34  Roman Festchook 
1959         * version: 0.8
1960         * src/aps.c: more verbose info when searching for APs
1961         * README: added warnins about using Statistics/APs option
1962                 and info about ap-trapd
1963         * src: code cleanups to remove some warning when compiling gcc 2.9x
1964
1965 2002-04-01 21:36  Roman Festchook 
1966         * src/wlan.c: fixed bug with AP name lenght when setting AP name,
1967             this may cause ip address change like
1968             192.168.97.32 => 0.192.168.97. So I think it's critical bug.
1969
1970 2002-03-31 22:58  Roman Festchook 
1971         * src/wlan.c: fixed bug with ESSID lenght when setting ESSID,
1972             this make impossible to set ESSID in some cases
1973         * src/trapd.c: added SNMP traps processing daemon
1974
1975 2002-03-27 13:58  Roman Festchook 
1976         * version: 0.7.6
1977         * src/ap-mrtg: error reports fixes
1978         * src/power.c: power level settings changed,
1979             now optimal values may be experimentally choosed    
1980
1981 2002-03-21 14:32  Roman Festchook 
1982         * src/smnp.c: conection timeout fixes
1983
1984 2002-03-23 23:16  Roman Festchook 
1985         * version: 0.7.5
1986         * src/auth.c: fixed bug with mac addresses num = 65535, which mean 0,
1987             this may cause problems configuring absolutelly new AP
1988         * src/aps.c: more safe KnownAPs function - now it restores parameters
1989          after requesting known aps info
1990         * src/cmd.c: upload configuration fixes    
1991
1992 2002-03-11 02:01  Roman Festchook 
1993         * src/snmp.c: SNMP packets assembly rewriten to work correctly
1994              with packets which size more than 128 bytes
1995
1996 2002-03-09 02:15  Roman Festchook 
1997         * version: 0.7.4
1998         * src: more verbose parameters description, removed unused code
1999         * ap-cnf: added screen "About", just about me and my program:))
2000         * ap-mrtg: errors printed in MRTG parsable format
2001         * TODO: new goals
2002
2003 2002-03-07 11:20  Roman Festchook 
2004         * version: 0.7.3
2005         * src/snmp.c: fixed bug with alarm handler
2006         * src/stat.c, src/auth.c: removed mac addresses limit, added
2007             option to save Associated Stations mac addresses to file.
2008
2009 2002-03-03 13:22  Roman Festchook 
2010         * version: 0.7.2
2011         * src: many small bugfixes and code cleanups
2012         * src/stat.c: Ethernet, Wireless and Wireless environment screens
2013             now refreshed every second with updated data
2014         * src/test.c: start working on test mode settings, but it not useful
2015          for now
2016         * README: new homepage url
2017
2018 2002-03-01 23:53  Roman Festchook 
2019         * version: 0.7.1-pre
2020         * src/snmp.c: Wireless stat now count all packets not only Unicast
2021         * src/power.c: setting power level changes
2022         * README: changed info about setting power level
2023
2024 2002-02-28 00:52  Roman Festchook 
2025         * src/snmp.c, src/ap-cnf.c, src/ap-mrtg.c: connect blocks fixes
2026
2027 2002-02-27 20:15  Roman Festchook 
2028         * src/power.c: power level now displayed with some kind of graph
2029
2030 2002-02-26 14:22  Roman Festchook 
2031         * version: 0.7
2032         * src/wep.c: added Privacy settings, please test
2033
2034 2002-02-25 16:44  Roman Festchook 
2035         * spelling: spelling heads up:)) (thanks Charles Henderson)
2036
2037 2002-02-25 14:35  Roman Festchook
2038         * version: 0.6.1
2039         * src/ap-mrtg.c: added utility to use MRTG for create stats graphics
2040         * README: added info about using MRTG to request AP
2041
2042 2002-02-24 01:10  Roman Festchook
2043         * src/power.c: added Signal Power settings
2044         * README: added info about Signal Power settings
2045         * version: 0.6
2046
2047 2002-02-23 16:53  Roman Festchook
2048         * src/bridge.c: added SNMP Traps switch option
2049         * src/wireless.c: interface improvement when setting Basic and
2050          Supported rates
2051         * src/auth.c: socket to AP now opened in nonblock mode
2052         * src/snmp.c: disabled program halt when timeout data read from socket
2053         * TODO: new goals
2054         * THANKS: added
2055
2056 2002-02-21 22:52  Roman Festchook
2057         * src/bridge.c: fixed broken setting RemoteBSSID in no
2058                         Access Point operational modes
2059
2060 2002-02-21 14:17  Roman Festchook
2061         * doc/: added some docs about setting signal power
2062         * doc/mib: added mibs from another APs
2063         * TODO: added setting signal power
2064         * README: added additional info
2065         * src/: new features - new code, version 0.5
2066
2067 2002-02-13 23:22  Roman Festchook
2068         * ChangeLog: There was no ChangeLog here, so I added one.