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