Wireless
Access Point
utilites for Unix


Search:
 
ap-utils Web

Супутникове телебачення в Житомир╕ та област╕

Приймальний пункт електронного лому в Житомир╕


ChangeLog

	    2005-11-05 Roman Festchook
	* lib/menu.c: rewritens menu UI to be more flexible when using translation
	  string (problem with long translations)
	* po/uk.po: translation updated
	* configure.in: version 1.5.1pre2

2005-09-04 Daniel Fischer
        * ap-utils.spec: adopted to SUSE Linux 9.3, new required packages for build: ncurses-devel

2005-07-05 Jorma Karvonen
	* po/fi.po: Finnish translations added

2005-07-05 Sharuzzaman Ahmat Raslan
	* po/ms.po: Malay translations added

2005-05-22 Roman Festchook
	* lib/common.c: fixed displaing field names when user enter ip
	  and label in connect options screen
	* lib/ap-utils.h: fixed showing wrong RSSI in dBm on ALMEL410 APs with SBRIGES ext
         in ap-config and ap-gl utility
	* src/stations.c, ap-gl/stations.c: fixed showing wrong LQ% in ap-config and ap-gl
	* lib/common.c, lib/set_oeminfo.c: removed translation of nontext string
	* src/bridge.c: fixed displaying client isolation status (reversed:)
	* po/uk.po: translation updated
	* configure.in: version 1.5.1pre1

2005-05-22 Clytie Siddall
	* po/vi.po: Vietnamese translations for ap-utils package added
	* lib/aps.c, lib/wlan.c: spelling fixes preambule -> preamble
	* lib/common.c: reason->reasons

2005-04-20 Steve Murphy, Philibert Ndandali, Viateur MUGENZI, Noц'lla Mupole,
Carole Karema, JEAN BAPTISTE NGENDAHAYO, Augustin KIBERWA, Donatien NSENGIYUMVA,
Antoine Bigirimana
	* po/rw.po: Kinyarwanda translations for ap-utils package added

2005-03-07 Roman Festchook
	* src/ap-rrd.c: changed format of error messages
	* configure.in, NEWS: version 1.5

2005-03-06 Jan Rafaj
	Since one of the users has provided me with SmartBridges APPO,
	the support for latest APPO firmware (1.4k5) can now hopefully
	be finished as originally intended.
	* TODO: updated
	* Documentation/FAQ: updated
	* ap-gl/Makefile.am:
	  - bugfix: added missing @CURSESLIBS@ to the target
	* lib/ap-utils.h:
	  - Q_HELP is gone
	  - added dbmconv() macro to correctly handle dBm computing for
	    smartBridges firmware
	* lib/ap_search.c:
	  - 'Wireless' OID is really 'sysDescr' OID
	  - no longer ask for community, since device will respond to
	    sysDescr query no matter what community is currently being used
	    (Roman, thanks for notifying!)
	  - bugfix: 'AP NAME' changed to 'FW TYPE (VERSION) AP NAME', to
	    reflect better whats being displayed
	  - bugfix: scan_local_segment() now triggers screen-width truncation
	    limit correctly
	* lib/common.c:
	  - cosmetics: screen is now properly cleared with exit_program()
	* lib/input.c:
	  - bugfix: exclusive use of getch() in wait_key() instead of
	    escape-sequences-not-aware getc() results in greater robustness
	    of input code (it is now a lot harder to end up with buffered
	    content in stdin, that would otherwise lead to odd results
	    elsewhere)
	  - get_value() almost completely rewritten. switched from getchar()
	    to getch() to get correct output on older terminals, as well as
	    to avoid displaying of escape-sequences and to interpret escape-
	    sequences for the following usual keys, that now work:
	    INSERT (toggles Insert/Overwrite mode)
	    DELETE (rightside delete)
	    BACKSPACE (leftside delete)
	    LEFT ARROW (move cursor back 1 character)
	    RIGHT ARROW (advance cursor forward 1 character)
	    HOME (move to the beginning of the string)
	    END (move to the end of the string)
	  - bugfix: get_value() will now omit leading zeros from correct number
	    given by the user (they will be eaten upon user's ENTER keypress)
	  - bugfix: in get_mask(), trans_count must be always reset upon
	    failure to validate user input, or after single failure, all
	    subsequent attempts would (previously) fail
	* lib/oui.c: added OUIs:
	  - 000E2E (Edimax Technology Co., Ltd.)
	  - 000F66 (Cisco-Linksys)
	  - 00117C (e-zy.net) :)
	* lib/set_oeminfo.c:
	  - prepended 'USB ' in front of 'Vendor ID' and 'Product ID'
	    (cosmetic)
	* lib/snmp.c:
	  - bugfix: eliminated leak by unfreed malloc'ed memory in snmp() using
	    static buffer
	  - introduced three new functions: close_sockfd(), open_sockfd()
	    and reopen_sockfd(). They should really be in common.c, but then
	    again, they are low-level stuff that should primarily be used
	    only in snmp(), and snmp.c itself contains no ncurses stuff
	    so functions it defines can be reused by external non-ncurses-
	  - in snmp(), switched from sig*jmp()/alarm() timeout code to select()
	    in favor of simplicity and possibility to monitor stdin read-state
	    change at the same time
	  - snmp() will now return with 0 immediately upon keypress, if
	    snmp_quit_by_keypress = 1 and type = GET. This has been added
	    to allow user-requested last-resort quit from blocking state
	    (for example when the target AP does not respond). The decision
	    of what to do is up to the calling code, that has to check
	    stdin content and act accordingly (currently this is used for
	    immediate quit using q/Q key from otherwise blocking snmp() calls).
	  - sockfd is now globally defined here
	  - snmp() now always 'flushes' sockfd prior further network processing
	    so that eventual packet received on sockfd prior snmp() call
	    wont cause desync errors
	  - snmp_retries global is gone. We need to wait at least 1 second
	    past sendto() for response packet, and do everything necessary
	    to avoid 'response for previous request received in next snmp()
	    call' => extra TODO: check, whether the OID part of received packet
	    matches with OID of preceding request, and if not, flush sockfd
	    and do an extra retry of sendto()/recv()
	    dependant programs.
	* Documentation/ap-tftp.8:
	  - (introduced in previous patchset)
	  - added warning that it is unsafe to try upgrading devices for whose
	    there's no vendor firmware nor upgrade utilities (such as
	    Tellus A13 a.k.a. i-Tec AP GOLD with blue front)
	* src/Makefile.am:
	  - ap-tftp needs to be linked to libap.a from now on
	* src/ap-tftp.c:
	  - bugfix: computation of percentage was not really correct in v1.0
	  - bugfix: fixed memleak caused by unfreed strdup()
	  - cleanup; use of float type eliminated
	  - it should be now possible to reuse tftp() for .cfg upload, too
	    (.cfg upload code still not there)
	  - revamp of config. parameters
	  - added capability to upgrade all AT76C510-based SmartBridges
	    devices (those with FCC ID 'PWG DOLPHIN')
	* src/aplink.c:
	  - polling mode is now always enforced
	  - LQ top value is now computed/shown for devices with ATMEL410
	    SBRIDGES MIB
	  - bugfix: screen is now correctly cleaned up upon transition
	    from 'associated: yes' to 'associated: no' state
	  - added pause possibility (using 'q' or 'Q' key)
	  - big facelift: added RSSI 'rounding' (a.k.a. RSSI average / last
	    20 samples) gauge, and a general side-scrolling bargraph
	    showing the history of RSSI, RSSI average, RSSI rounding, and,
	    in case of smartBridges firmware, also Link Quality. Views
	    can be toggled using 't' or 'T' key. At the moment, all values
	    are presented in percentage, since this (compared to dBm)
	    does not fluctuate a lot among different firmware versions.
	    User may just pause the polling process and see the corresponding
	    dBm value for the bar currently shown in graph, near the
	    corresponding gauge.
	* src/auth.c:
	  - bugfixes: shown ea_dest_port, ea_time and ea_port values are now
	    properly decoded
	* src/bridge.c:
	  - renamed cf_trap_ports to cf_ports (cosmetic)
	  - bugfix: fixed up order of cf_ports to respect MIB-defined order.
	    Interresting note: ATMEL12350 EZYNET MIB firmware actually
	    returns config_port = 0 when it should return 3 ('Both' ports) =>
	    this case is now taken care of.
	* lib/common.c:
	  - screen is now cleared upon exiting ap-config
	* bugfix: fixed rare ap-config crash when sysDeviceInfo OID query
	  would return structure length of 92 bytes instead of 128. Suspection:
	  returning 128 might be a snmp() state machinery error?
	* squashed any sockfd lowlevel-manipulating stuff (socket(), bind(),
	  close()) everywhere in favour of already globally declared sockfd
	  in snmp.c and eventual reopen_sockfd() call. Lets forget about
	  sockfd if we use just snmp(). TODO: re-evaluate necessity to use
	  reopen_sockfd() in common.c and file.c .
	* dbmconv() is now used in every place that handles raw->dBm
	  conversion - TODO: just the ap_mrtg needs to be fixed (add
	  detection for SBRIDGES ap_vendorext, then dbmconv())
	* cosmetics: highlighting over changed values will now disappear,
	  once they are written (using 'W' key)
	* ERR_CREATING_SOCKET and ERR_BINDING_SOCKET replaced with one single,
	  more generic ERR_SOCKET
	* new feature: it is now possible to change polling interval in
	  range from <0,1;86400> seconds (default is 1 second)

2005-01-16 Jan Rafaj
	* ap-gl/auth.c: small bugfix

2005-01-15 Roman Festchook
	* src/ap-rrd.c: added utility to store stats from AP into RRD database
	* src/wlan.c: added 'ACK timeout' additional info into [T] SIFS time (msec)
		option description
	* configure.in, NEWS: version 1.5pre2

2005-01-11 Jan Rafaj
	Note to SmartBridges PTE: you could have nice support in ap-utils
	at cost of sending me one APPO sample. Since I actually have
	no sample to test & verify on, all my support for airPoints is on
	blind or 'someones trial and error report' basis. You should really
	support OSS developers better way. Info about how to reliably load
	airPoint PRO firmware to non-SB brand devices, based on the same HW
	ref. design, would of course help too.

	NOTE TO ALL USERS: IF YOU HAVE SMARTBRIDGES airPoint PRO (indoor or
	outdoor) AND WANT BETTER AP-UTILS SUPPORT, YOU CAN SEND ME ONE SAMPLE
	OF THIS DEVICE. OTHERWISE THERE WILL APPARENTLY BE _INCOMPLETE_ SUPPORT
	EVEN IN FUTURE! THE LAST APPO I I'VE SEEN IN BAZAAR THAT I WAS PLANNING
	TO GET IN ORDER TO IMPROVE SUPPORT IN AP-UTILS, HAS BEEN JUST SOLD
	OUT, SO MY PLANS ARE GONE. I'M NOT WILLING TO PAY LIKE $350
	FOR ONE SAMPLE JUST TO SUPPORT THE WORLD. SO UNTIL SOMEONE SUPPORTS
	ME WITH SAMPLE DEVICE TO TEST ON, MY SUPPORT FOR SmartBridges
	APPO in AP-UTILS IS _OVER_ (and this round of patches is apparently
	the last effort to improve support in this area).
	I'LL ALSO ACCEPT ANY DEVICE THAT USES THE SAME FIRMWARE / MIB
	AS SMARTBRIDGES airPoint PRO.

	You can contact me about the subjects above via e-mail at
	.

	Dedicated to memory of cat Micka, my pet.
	* EZYNET-enhanced AP firmware is now freely available! Read more about
	  its availability, upgrade possibilities and caveats in README,
	  section 'Firmware available free of charge for ATMEL12350 MIB
	  devices' !!!
	* renamed all references of 'VERNET' to 'EZYNET' (true vendor name)
	* renamed all references of 'TELLUS' to 'GEMTEK' (Tellus, SparkLan,
	  etc. appear to be GemTek subsidiaries or at least they seem to use
	  firmware from GemTek. If someone knows I'm wrong with this
	  conclusion, please let me know).
	* note: my primary focus is on support for devices running firmware
	  0.2.x.x, equipped with flash memory AT29LV040A (TSOP1), and
	  second SRAM, such as Tellus A14, SparkLan WX-1590L, etc.
	  Easy way of how to tell that the device has second SRAM, is
	  presence of (poor, locky) web management interface. Older devices
	  with single SRAM may be supported too, but my older test equipment
	  is restricted to W-Link WEN2021 and I-TEC AP GOLD / blue, which means
	  that support for other old ATMEL flavours may or may not work,
	  despite all effort towards supporting them.
	* README:
	  - added entries for supported APs: i-Tec AP GOLD (black front),
	    InterEpoch IWE1000A, OSBRiDGE m2410/p2410, SparkLAN WX-1590,
	    SparkLAN WX-1590L, D-com WX-1590 web, BOSSWAP
	  - the supported AP table is now sorted according to manufacturer name
	  - added section 'Firmware available free of charge for ATMEL12350 MIB
	    devices'
	  - made WARNING notices more accurate
	* THANKS:
	  - added entry with thanks to EZYNET
	* Makefile.am:
	  - reordered directory components so that 'intl' and 'po' will be
	    built as last ones. This helps on systems with old/broken auto*
	    tools, where building 'po' may fail (it still will do, but its
	    failure now wont prevent building other components).
	* Documentation/mibs-atmel:
	  - created & populated with all AT76C510 MIB prototypes that should
	    be supported by ap-utils
	* ap-gl/ap-gl.c, ap-gl/stations.c:
	  - backport of few changes from respective counterparts in src/,
	    to stay compatible with changed color scheme definitions
	    and format of 'Stations' output (btw, there is now no difference!)
	* ap-gl/auth.c:
	  - backported few non-invasive changes from auth.c
	* lib/ap-utils.h:
	  - added DONE_WRITING_APCONF & ERR_WRITING_APCONF, since they are
	    now referred from connect_options() as well as get_opts()
	  - added new structs AssociatedSTAsInfo_ATMEL410,
	    AssociatedSTAsInfo_ATMEL12350, NetworkSettings_ATMEL410_SBRIDGES
	    and NetworkSettings_ATMEL12350_EZYNET in favour of unified support
	    across most available vendor-enhanced MIBs
	* lib/common.c:
	  - connect_options() is now verbose about status of writing
	    ~/.ap-config file, through DONE_WRITING_APCONF & ERR_WRITING_APCONF
	  - bugfix: fixed ap_vendorexts[ap_type][] boundary check error;
	    no more segfaults when manually specifying MIB type as "ATMEL12350"
	  - bugfix: get_mib_details() no longer relies on OUI part of device's
	    eth. MAC address as authoritative info for MIB vendor extension
	    determination. This was 1. giving totally fake results
	    if someone changed device's MAC, and 2. giving false results
	    for people with devices whose firmware has had certain MIB vendor
	    extensions available (for example SparkLan users with GEMTEK
	    firmware). Autodetection should now work for much broader range
	    of devices with AP firmware.
	* lib/file.c:
	  - added functionality for HOME, END, PGUP and PGDN keys
	* lib/input.c:
	  - bugfix: in get_value(), use wmove()/wrefresh() instead of wechochar
	    with 0x08 char. (backspace) as parameter - this fixes visual effect
	    of disrespecting leftmost bound on platforms with older ncurses
	  - bugfix: get_mac() now forces user to specify all 12 numbers of MAC,
	    avoiding ambiguous results
	* lib/menu.c:
	  - squeezed the number of wrefresh(menu) calls to a minimum
	  - mark and highlighting of current menu item are now
	    cleared/restored upon entering/leaving atmel_set_oeminfo()
	* lib/oui.c: added OUIs:
	  - 000F3D (D-Link Corporation)
	  - 00112F (ASUSTek Computer Inc.)
	* lib/scr.c:
	  - simplified & unified 'Stations' menu output section in
	    scroll_rows() - it is now used for all ATMEL AP types.
	    Part separately dealing with APs using SmartBridges firmware
	    has been eliminated.
	  - shorten screen output of print_top_rssi()
	  - bugfix: in scroll_rows(), clear_main(3) changed to
	    clear_main(row), to make the first-row offset of scroll list
	    really configurable (required by auth.c)
	* lib/set_community.c:
	  - left boundaries of community fields now start at offset 37
	* lib/set_oeminfo.c:
	  - now also shows board VID & PID
	  - added possibility to configure # of calibrated channels
	  Reached 100% compatibility with original utility.
	* lib/snmp.c:
	  - removed RETRIES constant. Instead, snmp_retries now keeps
	    the default amount of retries. This was somewhat necessary,
	    as we may eventually influence amount of retries one snmp() call
	    will attempt, in src/aplink.c
	* lib/test.c:
	  - since test() is not yet ATMEL12350-ready, temporary kludge
	    has been added to disable this menu for devices with
	    such a MIB
	* lib/wlan.c:
	  - bugfix: fix utility crash, that could previously happen if
	    someone changed value of Fragm. threshold from default to
	    value < length of typical expected SNMP response packet,
	    on device managed with ap-config via wireless port.
	    The return value of snmp() is now checked against the number
	    of varbinds members entering snmp() (it covers return value
	    <= 0 as well).
	    NOTE: IT IS _VERY_ UNWISE AND RISKY TO CHANGE 'RTS threshold'
	    AND 'Fragmentation threshold' VALUES ON DEVICE MANAGED VIA
	    WIRELESS PORT, SINCE THEY HAVE DIRECT IMPACT ON PACKETS TRANSMITTED
	    VIA WIRELESS PORT, AND IF THE VALUE IS BEHIND CERTAIN THRESHOLD,
	    THE DEVICE MAY BECOME COMPLETELY _UNMANAGEABLE_ VIA WIRELESS PORT.
	    If this happens and you have management access to the device
	    via wireless port only, you may try your favourite *-snmp tools to
	    restore RTS threshold and Frag. threshold settings to their
	    default value (2346), but if this fails, the only real way left
	    to fix these values would be through ethernet or USB port. Beware!
	* lib/set_oeminfo.c, lib/sysinfo.c, lib/wlan.c:
	  - bugfix: changed assumption about selection of proper length
	    sysDeviceInfo OID - this cant be distinguished based on ATMEL MIB
	    type, since, for example, NETGEAR ME102 MIB has ATMEL12350 MIB, but
	    has length of this structure 128 bytes (which most ATMEL410 MIB
	    equipped devices have). Now the proper structure is selected
	    based purely on length of response returned on SysDeviceInfo
	    SNMP query - should 'fix' all places that deal with values
	    generated by query to SysDeviceInfo OID
	* src/aplink.c:
	  - newly introduced. Embeds atmel_aplink(), which is bound
	    to 'AP link' entry in the 'Info' menu. This entry allows to
	    monitor link state of the device in APclient or WRepeater mode.
	    It will inform user whether the APclient device is actually
	    associated to the AP or not, and if yes, what is the RSSI level of
	    the link (as well as Link Quality in case of device with
	    SmartBridges firmware, or actual connection speed in case of device
	    with EZYNET firmware), MAC of joined BSSID, ESSID, and used
	    RF channel.
	    RSSI top value per entire measurement session is also available.
	    Since the RSSI indication may be somewhat unstable (at least
	    with EZYNET firmware), showing of RSSI average from up to
	    99999 samples has also been implemented.
	    Note that the code will currently only work for ATMEL410 / SBRIDGES
	    or ATMEL12350 / EZYNET MIB devices, as MIBs of firmware from
	    other vendors does not seem to support NetworkSettings OID.
	    Exception is ATMEL12350 / NONE (NetGear ME102), whose APCLientInfo
	    OID is capable to give connection status too, but is not currently
	    implemented, since it uses different OID & structure and I do not
	    possess ME102 board to test with (TODO).
	* src/ap-auth.c:
	  - hardened input validation for the '-i ' parameter (according to
	    get_ip() in lib/input.c)
	  - added AP MIB type autodetection => utility will now also work
	    for devices with ATMEL12350 MIB. Devices with NWN MIB are yet
	    to be supported (TODO).
	  - assigned credits to Teemu
	* src/ap-config.c:
	  - added definitions for several 'should be defined by default' color
	    pairs, that are actually used in bargraph code of aplink.c .
	    Previous pairs 1,2,3,4 were redefined to 11,12,13,14 to avoid
	    clash with 'standard' color pairs above. This change has been
	    propagated to all files dealing with color pairs.
	* src/ap-mrtg.c:
	  - the same level of changes as in src/ap-auth.c. As side result,
	    it is no longer needed to specify AP MIB type (it will be
	    autodetected).
	  - bugfix: take into account different length of wirelessStatistics
	    structure in ATMEL12350 MIB & EZYNET extensions => '-t w'
	    will now also work for devices with this MIB & extensions.
	  - bugfix: restrict the '-t l' to ATMEL410 MIB devices in APClient
	    mode (ATMEL12350 MIB devices usually do not return any LinkQuality
	    indicators in wirelessKnownAPs structure).
	* src/ap-tftp.c:
	  - introduced tftp client for upgrading ATMEL-based AP firmware.
	    Should work with boards utilising either 1.4x.y firmware (generally
	    AT76C510+INTERSIL boards, such as D-Link 1150, W-Link WEN-2021,
	    SmartBridges APPO, etc.), and boards utilising 0.x.y.z firmware
	    (generally AT76C510+RFMD boards, such as Tellus A14, Sparklan
	    WX-1590L, NetGear ME-102, OSBRiDGE p2410/m2410, etc.).
	    Use with care and NEVER EVER try to use this utility to upload
	    firmware that is from different vendor than your AP, unless you
	    perfectly know what you are doing, of course - otherwise,
	    you may irreversibly turn your AP into paperweight quite easily.
	    ATMEL APs are well known for their general firmware upload
	    design flaw (no authorization necessary for firmware upgrade),
	    that has caused many destroyed APs by joe-blow users uploading
	    incorrect firmware, and even APs destroyed by malicious users
	    that have intentionally uploaded incorrect firmware. See manpage
	    for details.
	    You have been warned.
	* src/ap-trapd.c:
	  - recognise ATMEL12350 enterprise ID => will now react to traps
	    sent by devices with ATMEL 12350 enterprise MIB
	  - will now also print Trap number along with its string
	    representation
	  - bugfix: fixed problem with printing trap strings from
	    non-SmartBridges traplist when '-s' given, and vice versa
	* src/auth.c:
	  - introduced as replacement for old 'auth_mac.c'. Simple 'auth'
	    name reflects its purpose better - it now contains not just
	    MAC-based "auth.", but also other auth. types (Radius, 802.1x)
	    based on the available MIB vendor "extensions".
	  - now properly distinguishes between authorization error and
	    invalid data error for SET snmp() operation. Particularly imporant
	    when user tries to enter Config/MAC Auth menu with user community
	    (which only permits reading, but not writing, and since writing
	    is basically required even for pure showing of authorized MAC
	    addresses, we need to distinguish these errors).
	    If the AP is accessed with 'user' community and it has record(s)
	    in MAC auth. list, it will print '(insufficient community used)'
	    in the first row of the MAC auth. list field.
	    public
	  - bugfix: it is now possible to delete last MAC entry too
	  - bugfix: when no MAC address left on the list, disallow 'Delete'
	    function
	  - should now be ready for move to lib/. (and purging in src/)
	  - it is now possible to 'escape' from prompt that appears after
	    pressing 'd' (delete MAC), upon entering '0'
	  - by default, if number of defined MACs is greater than the
	    visible scrolling area, the list tail will be shown
	  - if adding new MAC addresses, the list will advance to the last
	    (currently added) MAC entry to show its position in the MAC table
	  - added functionality for HOME, END, PGUP and PGDN keys
	  - added functionality for extra Auth. enhancements present in
	    ATMEL410 MIB with SBRIDGES extensions (Radius auth.), and
	    in ATMEL12350 MIBs with EZYNET extensions (802.1X auth.)
	  - now properly distinguishes MIBs with 2-mode AuthorizationMacEnable
	    OID, and those with 3-mode AuthorizationMacEnable OID
	  - added check against entering duplicated MAC to the MAC table
	* src/bridge.c:
	  - bugfixes: since SBRIDGES and GEMTEK represent same lvalue, each
	    occurence of ap_vendorext comparison with value SBRIDGES or GEMTEK
	    must be and-ed with result of comparison against ap_type value
	    or all sorts of weirdness may occur (such as non-working options
	    for specific vendor extensions, although they normally should)
	  - bugfixes: revised presence of all OIDs in all actually supported
	    vendor-extended MIBs. Result: all available OIDs relevant to
	    this menu should now also be correctly supported on devices
	    with SmartBridges APPO firmware and NetGear ME102 device firmware.
	  - Label 'Wireless' for config-enabled port mode changed to
	    'Wireless (can be risky)'. I've finally made a resolution
	    to step forward in this - setting config-enabled port to
	    wireless-only can even be deadly for non-USB equipped devices,
	    if configured improperly, if no second ATMEL-based device
	    is handy for fixing conf. on the peer via its wireless port,
	    for outdoor installations, and in couple of other scenarios.
	    REALLY THINK MANY TIMES PRIOR SETTING THIS TO wireless-only !!!
	* configure.in, src/Makefile.am:
	  - avoid needless linking with curses library for several utilities
	    (ap-auth, ap-mrtg, ap-tftp, ap-trapd).
	* Sysinfo menu will now also show current 'Operational mode'
	* bugfix: all conditions that check return value of to snmp(,i,GET)
	  with i > 1, changed from '<= 0' condition to '< i' condition.
	  This is very important in cases when the device does not return _all_
	  the requested varbinds members filled up, which would usually lead
	  either to memory corruption often followed by ap-config crash
	  with 'segmentation fault' reason. If there's unreliable media
	  between the managed device and ap-config, this could previously
	  happen - typically, devices managed via their wireless port
	  or incorrectly configured devices (bad Frag. threshold and/or
	  RTS threshold) may respond with incomplete replies.
	* naming convention of many variables, structures and OID names changed
	  to respect this scheme (cosmetics, intended coding standard):
	  - names of several #defines changed to be descriptive as
	    'STATUS_DESCRIPTION'
	  - OID names, unless absolutely necessary, should be always named
	    EXACTLY after the corresponding OID name in MIBs for easier
	    referencing
	  - names of structures named after OID, should end with '_s' or
	    '_' followed by something reasonable
	  - variable names should reflect their whole purpose

2004-12-09 Roman Festchook
	* lib/common.c: fixed getting additional character into AP label during autodetection

2004-12-09 Michel Robitaille
	* po/fr.po: updated translation

2004-11-28 Roman Festchook
	* Documentation/ap-gl.8, Documentation/README.ap-gl: info from
	    Documentation/README.ap-gl moved to ap-gl man page, removed
	    Documentation/README.ap-gl
	* Documentation/README.ap-auth:
	     removed because all info now in ap-auth man page

2004-11-28 Roman Festchook
	* lib/common.c: added checking then function called from ap-gl utility
	    in connect_options() automatic detecting MIB, extention. Now community
	    must be entered manually
	* lib/ap_search.c: reverted back to scan oid Wireless info string (that find APs even
	    with wrong community) raser than APName oid; info string now truncated only if it
	    cant be displayed at current screen width (now it screen width independed)
	* Makefile.am: into dist-hook added command to remove po/*.gmo files from
	    final distribution package to decrease size
	* ap-gl/ap-gl.c: in ap-gl utility reverted back to ATMEL_PRISM rather than ATMEL410 naming
	* Documentation/ap-config.8: fixed minor bug in example key for 64-bit WEP encryption
	    (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=243208)
	* Documentation/ap-gl.8, Documentation/Makefile.am: added man page for ap-gl utility
	* Documentation/ap-auth.8, Documentation/Makefile.am: added man page for ap-auth utility
	* po/fr.po: fixed coredump in Config menu with French locale (now just removed long
	     translated string from po file)
	     (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=259645)
	* po/uk.po: updated translation
	* ap-gl/stations.c: fixed RSSI dBm representation
	* configure.in: version 1.5pre1_FreedomOfUkraine
	
2004-11-24 Jan Rafaj
	* README:
	  - made WARNING2 more accurate; added WARNING3
	* lib/Makefile.am:
	  - added set_oeminfo.c to the list of source modules
	* lib/ap-utils.h:
	  - QHELP and SELECT #defines moved here from lib/stat.c, as we now
	    reuse them. QHELP renamed to QTHELP (+ toggling mode).
	  - added #defines for NONE, SBRIDGES, TELLUS and VERNET constants
	    with numbering according to new ap_vendorexts[][]. Actual values
	    of these are hold within newly introduced ap_vendorext global
	    (similar to meaning of ap_type global).
	  - new data type 'rdprops', used to describe regulatory domain
	    properties (code, description, first channel, last channel)
	  - formatting fixes (cosmetic)
	  - now #includes lib/ap-curses.h
	* lib/ap_search.c:
	  - output formatting changes (unification)
	  - in case the length of AP NAME being displayed for actually
	    scanned AP exceeds 27 characters, truncate the display
	    to first 27 characters (80x25 screen limit) and append
	    '>' character to indicate that not full AP NAME has been
	    displayed
	  - user is now prompted for a community, that will be used
	    to detect APs, prior scanning
	* lib/common.c:
	  - introduced new char *ap_vendorexts[][]; moved char *ap_type[]
	    here from src/ap-config.c and ap-gl/ap-gl.c
	  - in favour of proper naming, renamed all *APNAME #defines
	    to *APLABEL (same for texts, with a help message that clearly
	    states that AP LABEL is _independent_ of AP NAME (AP NAME = name
	    stored inside the AP), to prevent eventual user confusion.
	  - all references to 'name' changed to 'label' in order to respect
	    that AP label != AP name (see above). permitted length of label
	    is now max. of 16 characters.
	  - implemented ability to manually select MIB vendor extension
	    along with MIB type (previously just 'AP type:'). This was
	    really necessary as we couldn't rely on get_mib_details()
	    probing especially when the target AP was not available.
	  - if AP MIB type & vendor extension has been _autodetected_, or if
	    there's a good belief that the to-be-connected AP (via
	    connect_options()) is really alive (when we enter connect_options()
	    from ap_search()), then offer possibility to use AP NAME
	    as AP LABEL. However, as AP NAME may have max. length of 31
	    characters, it will be always truncated to first 16 chars
	    (max. length of AP LABEL), and user will be warned if this happens.
	  - introduced new 'rdprops regdom_types[]' field to unify reg. domain
	    description. Along with newly introduced regdom_types[]
	    and regdom_idx(), it enables us to get reg. domain properties
	    related to specific reg. domain code at any time, anywhere.
	    Merged reg. domain codes & properties of MKK1 & ISRAEL freq.
	    domains. Change: MKK domain defines only channel 14.
	  - squashed ch_list() in favour of regdom_types[] => killed malloc()s
	    in wlan.c & test.c. char *channels[] now keeps statically what
	    ch_list() was used to generate on demand before
	  - avoid asking for community upon entering connect_options()
	    called from ap_search(), as we already know the community
	  - thrown myself into about()
	* lib/file.c:
	  - all references to 'name' changed to 'label' in order to respect
	    that AP LABEL != necessarilly AP NAME (see above)
	  - implemented storing of MIB vendor extension into ~/.ap-config
	  - changed name of stored file with MAC authorised addresses
	    in the AP from '~/ap-MIBTYPE.stations' to
	    'ap-IP-MIBTYPE-MIBEXT.stations'
	  - output formatting changes (in AP list code):
	    - 'NAME' -> 'LABEL', 'TYPE' -> 'MIB TYPE', newly introduced:
	      'MIB EXT'; accomodate to new layout
	  - in parse_db_str(), truncate displayed length of AP NAME to 16
	    characters (80x25 screen limit), upon length of label being read
	    > 16 characters (80x25 screen width limit), and append '>'
	    character to indicate that it has not been displayed
	    in its full length (TODO: remove screen width limits)
	  - fixed numerous memleaks caused by missing free()ing of
	    ip, passwd and label parts of APList structure in get_opts()
	  - option writing ~/.ap-config is now verbose. Required moving
	    main print_help() to the while(1) cycle body.
	  - save_Stations() is now verbose at minimum level
	* lib/input.c:
	  - patched get_value() so that zero-length ANY_STRING type input
	    can be optionally allowed. Selected string input fields now accept
	    empty value. minv & maxv arguments switched from int to unsigned
	    int so that we may cover full uint32 range - also involved
	    switching from atoi() to strtoul(), as we need to check a condition
	    when errno == ERANGE (given value bigger than 0xFFFFFFFF).
	  - implemented wait_key() as unified means to wait for user input
	    selection different ways. The actual input mode with respect
	    to waiting is being held in wait_mode global, that can
	    be toggled using 't/T' keys in statistic views where appropriate
	    (SysInfo, Ethernet statistics, Wireless statistics).
	  - added help_ysn() as preferred & unified way to wait for user Y/N
	    choice. Prints Y/ safe N help message; clear settings subwin
	    & returns 0 upon pressing y/Y or 1 upon n/N. All Y/N code
	    everywhere has been replaced with single call to help_syn().
	* lib/menu.c:
	  - added hidden call to atmel_set_oeminfo (secret 'OEM info settings'
	    menu), based on set_oeminfo_allowed global from set_oeminfo.c
	* lib/scr.c:
	  - print_bottom() now also prints MIB vendor extension info
	    in form of 'Ext: '
	  - introduced print_bold() to decrease high amount of low-level
	    attribute-setting stuff everywhere (involved conversion
	    to print_bold() wherever possible)
	  - removed print_viewtype() and all references to this replaced
	    with print_bold()
	* lib/set_oeminfo.c:
	  - newly introduced. Actually only functional for ATMEL CPU-based
	    APs. ALLOWS TO CHANGE OEM INFORMATIONS STORED WITHIN THE AP,
	    AFTER PRESSING 'S' KEY WHILE IN 'Config' MENU. Note that this
	    is a HIDDEN function, since it is really only suitable for large
	    WISPs & repair shops. Compatibility level that has been achieved
	    with original windows utility is around 96%. Use with care.
	* lib/snmp.c:
	  - added (currently commented out) new function ber_decode_uint().
	    It may come in handy elsewhere in the future.
	* lib/sysinfo.c:
	  - atmel_sysinfo() now uses select() to wait for user keyboard input.
	    'q' or 'Q' key quits, others force update without clearing screen.
	  - (hopefully) fixed conversion of raw input buffer value to int
	    for uptime-displaying code
	* lib/sysinfo.c, lib/sysinfo_set.c, lib/wlan.c, lib/ap-utils.h:
	  (cosmetical):
	  - added #include , missing on some platforms
	  - renamed ptr410 and ptr12350 to str410 and str12350
	  - renamed SysDeviceInfo_* to sysDeviceInfo (MIB conformance)
	  - fixed interpretation of (long) INT value returned by the AP
	    in UpTime-displaying code
	  - implemented toggling of polling mode through 'T' [works
	    only with ATMEL12350 VERNET MIB-compatible devices]
	  - uses select() instead of getch() when polling is active
	  - indentation fixes (cosmetic)
	* lib/test.c:
	  - changes to use channels[] and regdom_types[] instead of
	    ch_list() and malloc()s
	* lib/wlan.c:
	  - changes to use channels[] and regdom_types[] instead of
	    ch_list() and malloc()s
	  - fix: added missing print_help(WAIT_RET)
	* ap-gl/ap-gl.c:
	  - few indentation fixes (cosmetic)
	  - changes to keep sync with new lib functionality (MIB vendor
	    extensions code)
	* ap-gl/stations.c, src/stations.c:
	  - print_help() is now called from within while(1) cycle, in order
	    to be compatible with updated save_Stations()
	* src/bridge.c:
	  - fix: added missing print_help(WAIT_RET)
	* 'RegulationDomain' renamed to 'RegulatoryDomain' for MIB conformance
	* further optimisations everywhere for reusing print_bold()
	* load of small bugfixes
	* print_title() replaced with new print_top() that will also
	  handle displaying "view" type (on LHS) along with menu title
	  (on RHS) using single pass. This was really in need of unification.
	  Side effect: no need to redraw title strip on each screen update
	  anymore (no two separate ways to write to same location).
	* some spelling, indentation & accuracy fixes here and there

2004-11-09 Jan Rafaj
	* README:
	  - removed reference to HARDWARE-NOTES, that didnt made it into
	    previous ap-utils versions by accident
	  - added WARNING 1 and WARNING 2 sections (originally intended to be
	    in HARDWARE-NOTES, but the magnitude of their importance deserves
	    to put them straight into README)
	* TODO: updated
	* lib/ap-utils.h:
	  - added "(valid)" to the ERR_RET message, which more accurately
	    reflects what may actually happen (AP actually _may_ return
	    data, but in an unexpected format)
	  - enhanced WirelessStatistics structure for TransmittedPackets_11Mbps,
	    TransmittedPackets_55Mbps, TransmittedPackets_2Mbps, and
	    TransmittedPackets_1Mbps so that we can support functionally
	    enhanced firmware from VERNET WISP.
	* lib/ap_search.c:
	  - in third column, display operAccessPointName OUI using label
	    "Name" instead of Wireless OUI. Makes more sense.
	  - made the number of APs per screen, as well as the offset at which
	    the info about whats actually scanned, is printed, relative
	    to the actual screen height (so to increase maximum hard-coded
	    amount of APs displayed, just switch from 80x25 console font
	    to a bigger one, or use X terminal window)
	* lib/aps.c:
	  - reverted displaying back to RSSI & LQ both in % in screen 1.
	    This is becouse a) we want to keep as close to the view of the
	    original ATMEL utility as possible here, and b) huge dispersion
	    in dBm versus raw value of RSSI exists among different flavours
	    of APs, and the dBm formula unfortunately often gives results
	    very far from real values. So we want to display something thats
	    less jittering in the scope of inter-AP comparison.
	  - cosmetic fixes (2-line legend instead of 3-line)
	  - rebound the 'refresh' from 's' key to otherwise unused keys,
	    in favour of keyboard interface unification
	* lib/common.c:
	  - created get_mib_details() to provide vendor-specific private
	    ATMEL MIB detection
	  - fixed a bug introduced by the 'name' patch, resulting in
	    omission to clear screen properly when user has given
	    insufficient credentials (bad password) to detect new AP type
	  - made the 'name'-patch code malloc-free (and memleak #2 free).
	    There's no point to use malloc()d space here since we dont
	    reuse it elsewhere (contrary to char *community).
	  - fixed bad variable boundary-handling introduced by 'name'-patch
	    that might result in crash of utility under circumstance
	    when ~/.ap-config didnt previously exist and user attempted
	    to add new AP with name of length >= 7 characters
	  - added possibility to skip name definition if user wants to
	    (useful for example when the newly added AP's IP will be used
	    solely for testing purposes :)
	* vendor-specific private ATMEL MIB detection is now referred to
	  get_mib_details() everywhere
	* lib/file.c:
	  - a lot of indentation fixes
	  - in get_opts(): fixed couple of bugs:
	    - it was possible to issue 'Connect' command when the AP list
	      was empty (was leading to endless loop)
	    - 'Delete' command failed to remove last remaining AP from the
	      list, ending up in endless loop (as get_value() doesnt do
	      sanity checking on its input paremeters)
	  - fixed a memleak #1 possibly introduced by 'name' patch - we need
	    to free char *name after its use
	  - in _scroll_rows(), fixed the AP MIB TYPE cutoff-by-format-string,
	    introduced by 'name' patch, and enhanced message size to accomodate
	    the true max. row size instead
	  - in get_opts() appended '(in ~/.ap-config)' behind the user-defined
	    APs list banner, to better reflect the real meaning of 'NAME'
	    (and other fields), to prevent someone from f.e. thinking
	    that the NAME here is the name stored in AP's configuration
	    (which it is NOT, of course).
	* lib/oui.c: added OUIs:
	  - 000B46 (Cisco)
	  - 000D54 (3Com Europe Ltd)
	  - 000D88 (D-Link Corporation)
	  - 000EA6 (ASUSTEK COMPUTER INC.)
	* lib/radio.c:
	  - fixed non-working radio menu with ATMEL12350 APs by merging the
	    initial TestModeRadioConfiguration and operAntennaSettings OID
	    modifications when ap_type == ATMEL12350
	* lib/stat.c:
	  - replaced ERR_RET_PRESS with ERR_RET
	  - simplified; no more forking, goto's reduced, no need of
	    pipe(), alarm() or sig*jmp(); use select() for waiting -
	    it is now possible to quit (by pressing 'q' or 'Q') immediately.
	    Also, the counters now get updated immediately after pressing
	    whatever key != q.
	  - fixed a bug that, due to previous use of sig*jmp(), resulted
	    in lockup when attempting to quit ap-config after it has received
	    invalid packet, by pressing 'q' key several times
	  - WirelessStat(): implemented support of ATMEL 12350 functionally
	    enhanced MIB by VERNET WISP.
	* lib/sysinfo.c:
	  - enhanced atmel_sysinfo() for displaying system uptime using
	    UpTime OID from ATMEL12350 VERNET MIB.
	* lib/wlan.c:
	  - fixed showing/setting of BeaconPeriod value for ATMEL12350_TELLUS -
	    acceptable value range is now 0 - 65535 as originally intended
	  - new: implemented showing/setting of 'SIFS time' parameter, specific
	    to APs with ATMEL12350_VERNET firmware/MIB
	* spelling & indentation fixes
	* lib/scr.c, src/stations.c:
	  - implemented support for viewing statistics
	    produced by enhanced ATMEL 12350 firmware by VERNET
	  - implemented toggling of RSSI between 'dBm' view, '%' view, and
	    raw view - added new functions print_viewtype_rssi(), conv_rssi().
	    [TODO: update ap-gl/stations.c, too]
	  - pressing other than the selected keys will now result in refresh
	    of all values

2004-10-24 Roman Festchook
	* lib/common.c: fix to clear display before displaying AP type 
	* configure.in: version 1.4.2pre1

2004-10-24 Przemyslaw Stanislaw Knycz
	* po/pl.po: translation updated

2004-10-18 Roman Festchook
	* lib/common.c: fix to use get_value instead of get_pass for input AP name
	* po/uk.po: translation updated

2004-10-18 Teemu Kiviniemi
	* src/ap-auth.c: command line utility to change the list of authorised MAC addresses added
	* Documentation/README.ap-auth: some docs for ap-auth utility

2004-10-18 Aleksey Korenkov
	* lib/common.c, lib/file.c, src/ap-config.c: patch that adds name to list of APs

2004-08-08 Dan Pelleg
	* lib/ap_search.c: fix error when build ap-utils on freebsd.

2004-06-22 Elif Bilge Maden
	* po/tr.po: Turkish translation added

2004-05-16 Roman Festchook
	* configure.in: version 1.4.1
	* NEWS: main changes added

2004-05-16 Michel Robitaille
	* po/fr.po: updated translation

2004-05-04 Roman Festchook
	* lib/ap_search.c: Compiler Error for ap-utils on Darwin 7.3 (Mac OS X 10.3.3) fix

2004-04-04 Dieter Fiebelkorn
	* lib/ap_search.c: Compiler Error for ap-utils on Darwin 7.3 (Mac OS X 10.3.3) fix

2004-03-20 Roman Festchook
	* ap-gl/bridge.c: Isolate wireless clients status displaying fixed
	* lib/snmp.c: decreased timeout waiting for snmp reply packet to 1 second
	* src/ap-mrtg.c: to decrease usage of network and AP CPU AP name only requested if -n option specified

2004-03-06 Roman Festchook
        * src/ap-trapd.c: MAc address logging changed to common ap-utils format (without any dividers)
	* configure.in: version 1.4.1pre3

2004-02-27 Roman Festchook
        * lib/ap-curses.h, configure.in: updates to build with SysV curses lib if ncurses not found

2004-02-27 Daniel Eisenbud
	* lib, src, ap-gl: Solaris and SysV curses build fixes

2004-02-26 Roman Festchook
        * lib/sysinfo.c, lib/wlan.c: fixed Bus error when getting SysInfo structure data from AP on Sun Sparc64 processor
	* po/uk.po: updated translation
        * lib, ap-gl, src: removed dublicated includes
        * lib/ap-utils.h, lib/ap-curses.h, configure.in: updates to build on Solaris with SysV curses lib
	* THANKS: updated

2004-02-25 Vladimir N.Velychko
        * Documentation/Ukrainian/*: translation spelling fixes

2004-02-25 Roman Festchook
	* lib, ap-gl, src: removed including config.h from files that include ap-utils.h
	* lib/ap-utils.h, configure.in: another updates to MacOS X build

2004-02-24 Daniel Eisenbud
	* lib/wlan.c: fix to make ap-config able to set ESSID on powerpc and probably other bigendian machines

2004-02-22 Roman Festchook
	* src/stations.c; ap-gl/stations.c: added check if AP in Client mode with corresponding warning message to user
	* configure.in: version 1.4.1pre2
	
2004-02-21 Roman Festchook
	* configure.in: updated to build under MacOS X

2004-02-10 Roman Festchook
	* lib/scr.c: fixed memory leak in scroll_rows function
	* lib/wlan.c: fixed wrong keys for changing values for NWN APs

2004-02-04 Roman Festchook
	* configure.in: version 1.4
	* NEWS: main changes added

2004-01-30 Roman Festchook
	* Documentatin/README.ap-gl: added file with notes about ap-gl utility
	* TODO: updated

2004-01-29 Roman Festchook
	* ap-gl: changed ATMEL410 -> ATMEL_PRISM name, for safe use removed Config port blocking, merged wireless client isolation (unicast & broadcast).

2003-12-30 Roman Festchook
	* 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)
	* lib, src, ap.gl: a lot of internal code moving from program to lib sources
	* po/uk.po: translation updated
	* TODO: updated
	* configure.in: version 1.4pre2 "Happy New Year" release
	* src/bridge.c: renamed options "Send back broadcast/unicast traffic) to Isolate wireless clients
	
2003-12-28 Ashley Gittins
	* src/ap-mrtg.c: changes to support ATMEL12350/ME-102 

2003-11-27 Roman Festchook
	* TODO: updated

2003-11-27 Jacek Pliszka
	* ap-utils.spec, Documentation/README.RPM: added spec file for rpm building

2003-11-25 Roman Festchook
	* po/uk.po: updated

2003-11-23 Roman Festchook
	* po/uk.po: updated to current sources
	* src/common.c: changed copyright years to 2001-2003
	* src/ap-mrtg.c: changed copyright years to 2002-2003
	* src/aps.c: table header legenda increased to 3 lines
	* TODO: updated with current goals and removed working now things
	* configure.in: version 1.3.4pre1

2003-11-15 Jacek Pliszka
	* 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

2003-11-11 Roman Festchook
	* src/ap-mrtg.c: fixed to return 999999999 for outgoing traffic when error connecting to AP exist 

2003-10-27 Jan Rafaj
	* README,THANKS,TODO: modified
	* HARDWARE-NOTES: added. This should keep important hardware-related
	  informations that the users _must_ read prior using ap-utils.
	* reverted parameters order for on_off(), menu_choose() so that
	  we always use  order everywhere
	* src/aps.c:
	  - made ap_viewtype global so that the selected view type
	    sustains for whole session
	  - replaced snmp() for SiteSurveyCommand scan with sendto(),
	    as buggy ATMEL12350 firmware does not confirm SiteSurveyCommand
	    reception, but goes straight to internal scanning loop.
	    This allows for attempts to perform SiteSurveyCommand
	    via wireless interface of the AP, which would previously
	    time out due to the reluctance of the firmware to send
	    confirmation, as described above.
	* src/bridge.c: disallow remote BSSID option key if AP is in
	  Access Point mode
	* src/common.c:
	  - again changed/corrected the order of autodetection.
	    We cannot check against sysDescr OID of ATMEL12350 in first step
	    becouse ATMEL410 devices would pass this check too and would
	    be falsely marked as ATMEL12350.
	  - added back possibility to manually select the AP type.
	    User is given a choice to either autodetect the device
	    (default), or specify type manually. The latter may have
	    advantage if the AP is not actually available via network.
	  - hide cursor again after user turns back from the subshell
	* src/radio.c: implemented detection & setup functions for APs
	  that give response to operAntennaSettings OID query in 1-byte
	  format. It seems that these devices do not distinguish between
	  receiving and transmitting antennas. This is true even for some
	  APs with single antenna output (Tellus A14 as an example),
	  where this OID gives really no good to the sum of resulting
	  functionality (why would you ever need to set up which antenna
	  is left, right or diversity, if you got just one ? :^)
	* lib/ap-utils.h, src/common.c, src/input.c:
	  - added new function get_pass(). This code has been taken from
	    common.c, modified and moved to input.c.
	  - AP type is now displayed once it is selected or autodetected
	  - maximum password length is 16 characters, not more (originally
	    it was 32). It is quite possible more than 16 may work
	    with some devices, but I've never seen an AP MIB that would
	    define community length > 16 characters.
	  - made the offsets at which the values are displayed, relative
	    to the length of option name strings, to ease work for
	    translators
	  - yes_no(): newly introduced
	  - ignore escape key presses in both get_value() and get_pass()
	* src/ap_search.c:
	  - indentation fixes
	  - if connect_options() is called for discovered APs, the 'type'
	    argument has to be always > 0, as this is being checked
	    against in connect_options(). We increment it with one all
	    the time and decrement back after the check in connect_options().
	    Now, the user is not prompted for AP type in connect_options()
	    if he should not have to be (originally intended behaviour).
	  - check against duplicated responses from ATMEL410 APs. These
	    are also able to answer queries with 12350 in query OID. This
	    is now being explicitly checked for => no more duplicate
	    ATMEL410 and ATMEL12350 APs with same IPs in the Search menu.
	  - do not attempt to assign const char "public" to 'community'
	    variable, as we attempt to free() it elsewhere. We could use
	    malloc() here, but still, this would have no good reason since
	    user is (and should be) always prompted for a password once
	    he selects desired AP from the 'Search' menu, once it is found =>
	    all password-saving & handling parts have been removed for now.
	    This also fixes a crash that would occur if someone would try
	    to connect to an AP in 'Connect' menu, after unsuccessful
	    'Search' attempt.
	  - implemented searching per multiple network devices. This involved
	    modifying ap_search() and changing it to scan_local_segment(),
	    as well as making scan_local_segment() self-reentrant, plus
	    adding portable code to scan for available network interfaces
	    for their IP/broadcast(ptp) pairs, that are later used to scan
	    segments via scan_local_segment(). Thanks to Dan J. Bernstein
	    for an effort in writing portable SIOCGIFCONF-related code;
	    the current implementation is based on his ipme.c from Qmail.
	    No more using 255.255.255.255 as broadcast as well as source
	    IP scanning. Results are now accurate even on routers with
	    multiple network interfaces of different types. The current
	    ap_search() has been verified/tested with W-Link WEN2021
	    and Tellus TWL-A14 APs on Linux 2.2/2.4 and FreeBSD 4.9 .
	  - the progress is now verbose:
	    - each AP is shown immediately as soon as it is found
	    - the screen is realtime-updated with information about network
	      interface index, its name and AP type, currently scanned for
	  - it is now possible to quit from scanning process by pressing
	    'q' or 'Q' whenever user wants to
	  - do not attempt to connect to an AP by pressing a key with index
	    of AP that is not present in the 'found' table
	* src/oui.c: added OUIs:
	  - 000C30 (Cisco)
	  - 000C41 (The Linksys Group, Inc.)
	* configure.in: added check to determine whether the (struct sockaddr)
	  has 'sa_len' member, and if it has, #define HAVE_SA_LEN in order to
	  properly support network interface detection on 4.4BSD-ish systems.
	  Moved AC_CONFIG_AUX_DIR macro behind AC_INIT, to satisfy
	  newer autoconf. Also, moved template definition from acconfig.h here.
	* acconfig.h: deleted (deprecated for newer autoconfs)
	* src/menu.c: added hooks for keys, 'q' / 'Q', Home (PageUp), and
	  End (PageDown)
	* src/set_community.c: use get_pass() for now instead of get_value(),
	  so that the passwords are hidden when someone types them in.
	  We should really use get_value() for this later, and make
	  the password hiding optional.

2003-10-21 Roman Festchook
	* configure.in: version 1.3.3, added "thank you" message
	* src/common.c: falling back to firstly implemented AP type autodetection order - firstly searching for ATMEL410, by default ATMEL12530
	* NEWS: main changes added

2003-08-14 Roman Festchook
	* configure.in: version 1.3.3-pre3

2003-09-08 Jan Rafaj
	* README: added several APs to the table of supported hardware
	* lib/ap-utils.h, src/ap-config.c, src/auth_mac.c: AuthMAC()
	  renamed to atmel_auth_mac()
	* lib/ap-utils.h, src/input.c, src/test.c, src/set_community.c,
	  src/wep.c, src/wlan.c, src/auth_mac.c, src/bridge.c, src/common.c,
	  src/file.c, src/nwn_advanced.c, src/radio.c:
	  - get_value(): rewritten; now embeds the bounds as well as
	    pressed key checking. The range boundaries, the desired type
	    of input with respect to the acceptable characters, and the
	    pointer to a message to be restored, when a warning about
	    exceeded boundary is printed in the bottom stripe, are accepted
	    as four additional parameters now.
	  - get_ip(), get_mask(): newly introduced
	  - get_ip(), get_mac(): based on get_value(), with additional
	    bounds checking tailored accordingly and moved here from
	    src/bridge.c
	  - get_mask(): based on get_ip() with additional mask correctness
	    checking code moved here from src/bridge.c
	  - all the above functions were used to replace the respective
	    original input functions to match the changed prototypes
	  - the generic message 'Invalid value...' has been replaced
	    with 'Value must be in range %i - %i...'. This is printed
	    in bold-white/red in bottom stripe if the user input value
	    exceeds the predefined boundaries.
	  - added inet_aton()-specific includes to lib/ap-utils.h,
	    and removed elsewhere for multiple reasons
	* src/wlan.c: fixed code displaying the ESSID - upon its change,
	  previously it could happen that if a newly written ESSID
	  would be shorter than the previous one, the loop that has been used
	  to display ESSID would [erroneously] expect the string to be
	  finished with '\0' (which is not required due to operESSIDLength),
	  and would display garbage with content of and length up to an
	  old ESSID string

2003-08-27 Jan Rafaj
       * README: fixed/added some supported AP hardware entries
       * lib/ap-utils.h, src/ap-config.c, src/bridge.c, src/radio.c,
         src/set_community.c, src/sysinfo.c, src/test.c, src/wep.c,
         src/wlan.c: hopefully the last round of changes in naming
         convention
       * src/bridge.c, src/wlan.c:
         utility now distinguishes some extra MIB subtypes: for 410 enter-
         prises MIBs: "SmartBridges" form, and for 12350 enterprises MIBs:
         "Tellus" MIB form "prototype". The MIB form is being distinguished
         based on the OUI part of MAC address of the device.
         Other than those MIBs named above are considered "generic"
         forms, becouse are very ubiquitous.
         This procedure is necessary, becouse despite the fact that
         many MIBs keep the same enterprises ID, they differ slightly
         in OID structures (some OIDs are in one MIB and not in other,
         and same OIDs even may have significantly different meaning -
         this is a case of Tellus A14 MIB x NetGear ME102 MIB, f.e.).
         So, unfortunately, there's no other way, but:
         - make some MIB "prototypes" (aggregate those that contain
           exactly the same information, based on the supported
           AP models across all the device manufacturers)
         - determine the correct MIB based on the OUI part of MAC
           address of the device (we assume noone changes OUI part
           of the MAC of his AP)
         It is quite possible that this approach will need revision
         in the future, but since there appears to be no 100% reliable
         way of how to distinguish different device models of one
         specific manufacturer, the above is currently the finest,
         although still coarse enough, method to support most devices.
       * src/bridge.c:
         - 'Preferred BSSID' keys rebound from 'm/M' to 'r/R'
         - 'Forward broadcast traffic' keys rebound from 't/T' to 'r/R'
         - introduced new setting 'Trap-sending port(s)', and bound to 't/T'
           key. This setting appears only if ATMEL12350 device with
           "Tellus Group Co." OUI is detected.
       * src/wlan.c:
         - fixed 'Beacon period' input/output data formatting/displaying
         - display/snag/set 'Beacon period' and 'DTIM sending interval'
           options/their values only if the device uses "generic"
           ATMEL12350 MIB prototype (that of NetGear ME102 for example).
           This should fix crashing becouse of missing MIB OIDs for people
           that use this kind of devices.

2003-08-25 Roman Festchook
	* lib/ap-utils.h, configure.in: FreeBSD compile time fixes

2003-08-19 Roman Festchook
	* src/ap_search.c: fixed getch delay and restoring current connect options when quiting search screen

2003-08-18 Jan Rafaj
	* README, THANKS: modified
	* most of string #defines moved from lib/ap-utils.h to the corresponding
	  modules in src - lib/ap-utils.h should keep just those that are
	  common to more than 1 module
	* src/aps.c:
	  - fix bound-checking condition. Some APs with older ATMEL firmware
	    actually provide less space than 16 APs in its KnownAP reply,
	    and we also need to check for condition when lvalue of next MAC
	    entry in the response table is 0 (means end of statistics)
	  - only rewrite the current bridge_mode to 3 (AP client) if the
	    AP is ATMEL12350 type
	* src/auth_mac.c, src/bridge.c, src/nwn_latest.c, src/sysinfo.c,
	  src/test.c, src/wep.c, src/wlan.c:
	  - stripped the formatting characters from remaining string #defines
	  - made the displaying value in 'Feature: value' dependant on offset
	    computed through strlen() from #defined string - this way,
	    the internationalisation is eased becouse translators dont need
	    to keep with original english strings size
	* src/bridge.c: implemented new functionality from ATMEL 12350 MIB for:
	  - Configuration-enabled port(s)
	  - ForwardBroadcast
	  - SendBackBcast
	  - SendBackUnicast
	* src/input.c: enhanced get_mac() for checking invalid MAC values
	  that user may type in; if he does, print generic error and loop
	  unless user gives syntactically correct value.
	* src/radio.c: changed the 'Key' to '[key]' in bottom message for
	  uniformity.
	* lib/ap-utils.h, src/sysinfo.c, src/wlan.c: renamed CFG_STRUCT_
	  {ATMEL410,ATMEL12350} to SysDeviceInfo_{ATMEL410,ATMEL12350}
	* src/wlan.c: corrected offset of displayed values for features:
	  - InterRoaming
	  - BeaconPeriod
	  - DTIM

2003-08-14 Roman Festchook
	* src/common.c: changed AP type autodetection order - firstly searching for ATMEL12350, by default ATMEL410
	* configure.in: version 1.3.3-pre2
	* src/aps.c: fixed connecting to choosen AP on ATMEL12350 APs in not AP Client mode

2003-08-14 Elros Cyriatan
	* po/nl/po: New Dutch PO file for `ap-utils'

2003-08-11 Jan Rafaj
	* next round of spelling and indentation fixes
	* src/aps.c:
	  - made the 'KnownAP' statistics available only if the Access Point
	    is in AP client mode [original behaviour]. Some Access Points
	    may keep the statistics in their RAM, but no update is performed.
	    Even, sometimes, their RAM may contain garbage after reset,
	    which would cause parsing problems.
	* lib/ap-utils.h, lib/reset.c, src/ap-config.c, src/ap-mrtg.c,
	  src/ap_search.c, src/aps.c, src/auth_mac.c, src/bridge.c,
	  src/cmd.c, src/common.c, src/radio.c, src/set_community.c,
	  src/stat.c, src/stations.c, src/sysinfo.c, src/test.c,
	  src/wep.c, src/wlan.c:
	  - changed all occurences of 'ATMEL' to 'ATMEL410' and
	    for 'ME102' to 'ATMEL12350'
	* lib/ap-utils.h, src/ap-config.c, src/sysinfo.c:
	  - renamed sysinfo() to atmel_sysinfo()
	* lib/ap-utils.h, src/ap-config.c, src/wlan.c:
	  - renamed wireless() to atmel_wireless()
	* src/ap-config.c:
	  - redefined color pair 2 (black ink, green background), and defined
	    new color pair 3 (black ink, green background), and color
	    pair 4 (white ink, red background). 2 is used for showing
	    all string values actually changed by the user; 3 is used
	    for displaying column-info stripe in aps.c, and 4 is used
	    to display error-related messages in bottom status stripe.
	* src/input.c:
	  - get_value() modified
	* src/scr.c, lib/ap-utils.h:
	  - added new function print_menusel().
	    Prints a message split up to two parts - first part without
	    colors, second part in bright. Used in conjunction with get_value()
	    to display parameters that the user modified, in bold.
	  - added new function print_helperr(). This is basically the same
	    as print_help(), with the only difference that it prints
	    the text in white bold on red background. Uses color pair 4
	    and bold attribute; see above.
	* names of all print_help() functions related to printing error
	  messages have been changed to print_helperr()
	* src/auth_mac.c, src/bridge.c, src/radio.c, src/test.c, src/wep.c,
	  src/wlan.c, lib/ap-utils.h:
	  - implemented new colorisation scheme using print_menusel()
	    and get_value(), get_mac() - if user enters a new value,
	    the maximum space (in character counts) that can be used,
	    is displayed in inverse color. As soon as user confirms
	    the new value by pressing enter, the changed value is displayed
	    in bold (so that he knows what he has actually changed).
	* src/bridge.c:
	  - when entering AP's IP, mask and gateway, do not allow
	    to pass further if the user input is invalid - instead, loop unless
	    user enters valid information
	  - hardened bounds checking against correct netmask value;
	    now, invalid netmasks like 255.255.255.129 elicits error
	    and forces prompt for new value, too
	* lib/ap-utils.h, src/ap-mrtg.c, src/ap_search.c: placed
	  conditinal GLIBC checks => ap-utils now compile/run even
	  on non-GLIBC (LIBC5-based and such) systems, hopefully.
	  Actually it has only been tested with libc5-based Linux
	  system.
	* lib/ap-utils.h, src/ap-mrtg.c, src/ap-trapd.c: placed conditional
	  HAVE_GETTEXT checks around parts using gettext, to get
	  ap-utils compile on systems without gettext support
	* lib/snmp.c, src/file.c: external declaration of ap_type datatype
	  unified as 'short' and made global to make some old
	  GNU C compilers happy

2003-08-07 Roman Festchook
	* src/brige.c: fixed bug when saving changed ip, netmask and gw

2003-08-07 Jan Rafaj
	* various spelling and indentation fixes here and there
	* all the ATMEL 12350-specific stuff below has been modelled
	  using Tellus A14 AP.
	* src/aps.c:
	  - made it malloc()-free. no more potential leaks.
	  - 'KnownAP' now works for ATMEL 12350-based APs too
	  - allow of up to 16 concurrent APs to be displayed
	    in the 'KnownAP', as the packet itself may carry
	    up to 16 records (768/48). This is also a fix
	    becouse up to now, the menu has shown just the first
	    AP entry.
	  - The button for 'refresh without reset', originally bound to
	    'g' and 'G' key, has been rebound to 's' ('S') key,
	    since the keys a-g (A-G) are now used as keys, corresponding
	    to numbers 10-16 of the APs displayed, when used in
	    '# connect to this AP' command.
	  - enhanced '# connect to this AP' functionality for
	    also setting the appropriate channel through operChannelID
	    OID
	  - disallow connection to Ad-Hoc mode bridges
	  - fixed bad effect of displaying 'Writing data to AP'
	    after pressing AP number, even if the number of the
	    selected AP is not actually present in the table
	  - changed the color scheme to some more eye-pleasant values
	  - implemented 4 different "views", that can be toggled
	    via 't' ('T') key:
	    * view 1: - most usual one; with RSSI and LQ in %
			[ATMEL utility view]
	    * view 2: - the same as 1; except that RSSI is displayed
			in dBm and LQ in raw
	    * view 3: - ESSID shown expanded to full length,
			no NetworkType; RSSI displayed in raw,
			LQ displayed in raw
	    * view 4: - shown only BSSID, and its hardware manufacturer
	  - the 'KnownAP' statistics is available without reset
	    if the Access Point is either in any of APclient or AP modes,
	    not just when it is in APclient mode.
	* lib/ap-utils.h:
	  - HARD_CONFIGURATION_STRUCT is now replaced with two new
	    structures: CFG_STRUCT_ATMEL (for ATMEL 410-based devices),
	    and CFG_STRUCT_ME102 (for ATMEL 12350-based devices).
	* src/sysinfo.c:
	  - sysinfo() made malloc()-free, and made both ATMEL 410-
	    and ATMEL 12350-aware => SysInfo for APs of both ATMEL types
	    is now displayed correctly
	* src/oui.c:
	  - added OUI 000CCE (Cisco Systems)
	* lib/ap-utils.h, src/wlan.c:
	  - made it fully ATMEL 410- and ATMEL 12350-aware
	    (displaying/setting of additional InterRoaming, BeaconPeriod
	    and DTIM parameters in case of ATMEL12350). Note that
	    it is possible to regulate BeaconPeriod in range 0-65407
	    and DTIM in range 0-255, but the boundary limits may vary
	    with different hardware. I've tried to make as broad
	    range coverage as possible. Anyway, for example, Tellus A14
	    resets the BeaconPeriod internally to 100, if you write
	    it with value out of 1-1000 interval.
	  - rebound key for ESSID from 'd' ('D') to 'e' ('E')

2003-07-26 Roman Festchook
	* src/ap_search.c, src/common.c: changed AP types ATMEL to ATMEL410 and ME102 to ATMEL12350
	* src/common.c: added AP type autodetection - by default ATMEL12350
	* src/common.c, src/ap_search.c, lib/ap-utils.h: now its possible to choose working AP from AP search result
	* po/uk.po: updated translation
	* lib/ap-utils.h, src/brige.c: bigendian fixes when setting ip, netmask and gw
	* configure.in: version 1.3.3-pre1

2003-06-20 Roman Festchook
	* configure.in, acconfig.h, lib/ap-utils.h: small fix to compile under OpenBSD
	* po/*.po: fixed some fuzzy translations
	
2003-06-03 Eugen Hoanca
        * po/ro.po, configure.in: added Romanian translation

2003-05-28 Roman Festchook
	* configure.in, NEWS: version 1.3.2

2003-05-26 Roman Festchook
        * config/config.guess, config/config.sub: updated from latest autoconf

2003-05-21 Roman Festchook
        * README: new supported AP added
	* configure.in: version 1.3.2-pre4

2003-05-20 Roman Festchook
	* src/ap-mrtg.c: fix bug like 2003-05-20 Peter 'p2' De Schrijver patch fixes

2003-05-20 Peter 'p2' De Schrijver
	* 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.

2003-04-29 Michel Robitaille 
        * po/fr.po: updated translation

2003-04-28 Roman Festchook
        * README: new supported APs added
	* src/auth_mac.c: small compile error with old gcc fixed

2003-04-26 Roman Festchook
        * README: new supported APs added

2003-04-15 Roman Festchook
	* po/pl.po: updated translation
	* lib/Makefile.am: not used code exluded for faster compilation
	* lib/ap-utils.h: code rearangement
	* src/scr.c: some updates for more faster screen handling
	* configure.in: version 1.3.2-pre3

2003-04-15 Przemyslaw Stanislaw Knycz
	* po/pl.po: fix to correct displaying polish chars

2003-03-13 Roman Festchook
	* README: new supported AP from SVEC

2003-02-27 Roman Festchook
	* FAQ: updates

2003-02-26 Roman Festchook
	* lib/*, src/*, README: added support fpr new Netgear ME102 enterprase in old Atmel mib (ME102 type)
        * configure.in: version 1.3.2-pre2

2003-02-25 Roman Festchook
	* README: new supported hardware from DCom removed (it's WLink hardware:)

2003-02-23 Roman Festchook
	* README: new supported hardware from DCom

2003-02-23 Roman Festchook
	* src/menu.c, src/input.c: added new vi-like keys to menu movement
	* Documentation/ap-config.8: added info about vi-like keys to menu movement
	* configure.in: version 1.3.2-pre1

2003-02-14 Roman Festchook
	* TODO: support for ME102 new mib
	* configure.in, NEWS: version 1.3.1

2003-02-11 Roman Festchook
	* src/wep.c, src/wlan.c: fixed for warnins when compiling by egcs-2.91

2003-02-08 Roman Festchook
	* src/common.c: removed unnecessary debug message 

2003-02-06 Roman Festchook
	* 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
	* Documentation/FAQ: added info about new ME102 AP
	* src/ap-search.c: fixed bug with closing sock descriptor after making search - what make impossible working with current AP without reconnect

2003-02-04 Roman Festchook
	* src/file.c: fixed updating options file bug

2003-02-03 Roman Festchook
	* src/wep.c, Documentation/ap-config.8: added info about WEP key values

2003-01-10 Roman Festchook
	* src/common.c: fixed options file name mismatch

2002-12-22 Roman Festchook
	* src/file.c: added keys for fast selecting one from first 9 APs, fixed coredump when parsing file in wrong format
	* po/uk.po: updated translation

2002-12-16 Roman Festchook
        * src/ap-mrtg.c: command line parameters parsing small fix

2002-12-15 Roman Festchook
        * configure.in: build cleanups
	* 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
	* src/*, lib/*: many code cleanups and fixes

2002-12-10 Roman Festchook
	* configure.in, src/Makefile.am: fixes to build on OpenBSD
	* README: new supported OS OpenBSD

2002-12-05 Roman Festchook
	* README: supported hardware table updated
	* configure.in, NEWS: version 1.3

2002-12-02 Roman Festchook
	* src/ap-mrtg.c: fixed printing warning in non verbose mode when getting Link Quality stats
	* src/ap-mrtg.c, man/ap-mrtg.8: Signal Strenght returned in dBm

2002-11-25 Roman Festchook
	* man/ap-config.8: removed dead link

2002-11-25 Wolfgang Fuschlberger
	* Documentation/Ovislink-HOWTO.html: updated howto

2002-11-20 Roman Festchook
	* configure.in: defined LIBS and INSTALL variables to compile under QNX (nto-qnx)
	* INSTALL: updated with info about installing on QNX
	* README: new supported OS added
	* src/Makefile.am, configure.in: removed checking for ncurses libs and LIBS difinition moved to Makefile (I think its wrong but useful:)
	* src/aps.c, man/ap-config.8: RSSI now displayed in dBm (thanks to Ivan Korshun)
	* po/*.po: translations updates

2002-11-11 Michel Robitaille
        * po/fr.po: updated french translation

2002-11-10 Roman Festchook
	* man/*.8: removed referrer to ap-atmel and ap-nwn

2002-11-10 Dan Pelleg
	* src/wlan.c: patch to build on FreeBSD

2002-11-04 Wolfgang Fuschlberger
	* Documentation/Ovislink-HOWTO.html: howto use ap-utils with Ovislink hardware
	* README: new supported hardware from Ovislink

2002-11-01 Wojciech Puchar
	* po/pl.po: polish localization

2002-11-01 Roman Festchook
	* lib/common.c, po/*.po: spelling fixes 

2002-10-31 Roman Festchook
	* src/aps.c: fixed getting info from APs manufactured by CC&C Technologies
	* po/*.po: translations updates

2002-10-30 Roman Festchook
	* README: new supported hardware
	* src/aps.c: check for right channel added

2002-10-29 Rahul G
	* lib/ber.c: function to ber encode object identifiers added

2002-10-24 Roman Festchook
	* configure.in, NEWS: version 1.2

2002-10-21 Pawel P. Kaszynski
	* README: new supported hardware from Intellinet

2002-10-17 Michel Robitaille
	* po/fr.po: updated french translation	

2002-10-15 Roman Festchook
	* configure.in: more fixes to compile under netbsd

2002-10-11 Roman Festchook
	* lib/common.c: added option to disable saving connect options to file

2002-10-10 Roman Festchook
	* src/wlan.c: fixed fail to set essid because wrong len
	* Documentation/mib/atmel: new mib added form airBrige device
	* src/ap-trapd.c, man/ap-trapd.8: added support for Smartbridges
	airBrige traps, run utility with -s key
	* src/brige.c: added support for Smartbridges airBrige speciffic oid

2002-10-09 Roman Festchook
	* src/brige.c: added check for getted from AP values
	* configure.in: added CC variable to compile under netbsd
	* README, INSTALL, mib/ap-config.8: updates about merging utilites to ap-config

2002-10-07 Roman Festchook
	* src/ap-config.c, lib/common.c, lib/ap-search.c: connect and
	search procedure updates

2002-10-07 Dan Pelleg
        * lib/ap-search.c: fix to compile under FreeBSD 

2002-10-03 Roman Festchook
	* src: ap-nwn and ap-atmel merged to one utility ap-config
	* lib/snmp.c: decreased timeout waiting for reply from agent - in general it result more faster read SNMP data

2002-10-02 Roman Festchook
	* common/ap-search.c: socklen_t variables redefined to uint32_t for build package under MacOS-X 
	* common/file.c: char variable j redefined as unsigned to socessful build where char is per default unsigned on arm, powerpc and s390.
	* nwn/wlan.c: form handling code cleanups, fixed display refreshing after changing antenna and rate options
	* README: new supported hardware
	* configure.in, NEWS: version 1.1.1

2002-09-29 Roman Festchook
	* nwn/advanced.c, man/ap-nwn.8: added some advanced options to optimize long range links and antenna tuning

2002-09-28 Roman Festchook
	* 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
	* nwn/reset.c, nwn/ap-nwn.c: added option to reset AP
	* atmel/wep.c: WEP encryption after fixes works - tested WEP64 crypted link between CompexWP11 and GL2411AP as client
	* atmel/ap-trapd.c, man/ap-trapd.8: updated traps list with new traps from 1.4j.1 firmware
	* atmel/brige.c: added Repeater mode to Brige modes
	* nwn/nwn.c: now possible to define 4 WEP keys and choose default key

2002-09-26 Roman Festchook
        * atmel/ap-mrtg.c: small fixes about link quality displaying
	* atmel/ap-trapd.c: small log format changes
	* README: new supported hardware Smartbridges airBrige and airPoint

2002-09-20 Roman Festchook
        * configure.in, NEWS: version 1.1

2002-09-19 Roman Festchook
	* atmel/aps.c: interface updates
	* po/uk.po, po/fr.po: small translations update

2002-09-19 Andy Igoshin
	* atmel/radio.c: now wors fin on big_andian

2002-09-17 Andy Igoshin
	* common/ap-utils.h, atmel/wlan.c: basic rates display fix
	* man/*.8: man page formatting updates

2002-09-17 Roman Festchook
	* nwn/stations.c: rewrited code that get associated stations info to avoid problems with invisible stations
	* nwn/stations.c, atmel/stations.c: fixed display last value problem
	* po/uk.po, po/fr.po: small translations update
	
2002-09-16 Roman Festchook
	* 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
	* po/uk.po: translation update
	* atmel/aps.c: added option to connect to one of the displayed known APs, also now possible reget and refresh (with reset) stats
	* 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

2002-09-15 Andy Igoshin
	* atmel/ap-mrtg.c, atmel/aps.c, atmel/bridge.c, atmel/cmd.c, atmel/stat.c,
	  atmel/stations.c, atmel/wep.c, atmel/wlan.c, common/ap-utils.h: code cleanups
	* nwn/sysinfo.c: code cleanups

2002-09-12 Andy Igoshin
	* configure.in: small fix for AIX
	* atmel/auth_mac.c, atmel/wep.c: case statement code cleanups
	* atmel/auth_mac.c: now works good with big_endian
	* common/ap-utils.h: additional macros for data conversion on big_endian
	* atmel/brige.c: removed any ip adderess converting on big-endian arch
	* atmel/wep.c: now encryption enable and key num works good with big_endian
	
2002-09-12 Roman Festchook
	* nwn/sysinfo.c: removed any ip adderess converting on big-endian arch
	* atmel/auth_mac.c: changed type to mib defined
	* common/ap-utils.h: swap2 definition to little_endian arch
	* atmel/wep.c: some variables declaration moved to up to compile on old gcc compilers

2002-09-11 Roman Festchook
	* atmel/wlan.c: fixed unpackeing RegulatoryDomain on big_endian computers
	* atmel/bridge.c, nwn/sysinfo.c: fixed ip adderess converting on big-endian arch

2002-09-11 Andy Igoshin
	* atmel/sysinfo.c: fixed displaying RegulatoryDomain on big_endian computers
	* configure.in: OS definition now standart macro, AIX compilation options  
	* atmel/auth_mac.c: mac auth foxes for big_endian

2002-09-08 Andy Igoshin
	* atmel/Makefile.am, common/Makefile.am, common/ap_search.c,
	  common/menu.c, common/scr.c, nwn/Makefile.am: patch to compile
	  by native compiler under AIX 4.3.3

2002-09-08 Roman Festchook
	* README: new supported hardware Micronet SP918 and OS AIX 4.3.3 added
	* configure.in, common/ap-utils.h, acconfig.h: now big_endian defined
	 using standart configure macro AC_C_BIGENDIAN (thanks Andy Igoshin
	 for suggection)

2002-09-06 Roman Festchook
        * atmel/bridge.c, nwn/sysinfo.c: fixed ip adderess displaying on big-endian arch
	* README: new supported OS MacOS-X
	* configure.in: new big_endian arch Power Macintosh

2002-09-04 Roman Festchook
        * nwn/wlan.c, atmel/wlan.c: fixed setting channel bug under
	    Spain and France regulatory domain
	* man/nwn.8: additional info about Search AP option
	* README: new supported hardware Dlink-1000AP
        * nwn/auth_mac.c: displaying mac autorization status fixed

2002-09-02 Roman Festchook
        * configure.in, NEWS: version 1.0.5
	* po/uk.po: ukrainian translation updates

2002-08-29 Roman Festchook
	* atmel/ap-mrtg.c, man/ap-mrtg.8, aclocal.h, configure.in, INSTALL: enable report to MRTG when unable to get stats 
	from AP now sturtup option, also command line arguments now parse using getopt() in ap-mrtg
	* atmel/ap-trapd.c, man/ap-trapd.8, aclocal.h, configure.in, INSTALL: option to change defaul unprivileged user
	now sturtup option, also command line arguments now parse using getopt() in ap-trapd
	* atmel/brige.c: entering AP mac address in Client mode fix
	* common.c, configure.in: macro for check big-endian arch (sparc and mips) now set variable AP_BIG_ENDIAN

2002-08-28 Roman Festchook
	* atmel/*.c, nwn/*.c, common/*.c: getting pressed key fixes to avoid reactions to neutral keys pressed by user

2002-08-28 Michel Robitaille 
	* po/fr.po: french localization

2002-08-27 Roman Festchook
	* atmel/stat.c, atmel/test.c, atmel/sysinfo.c, nwn/stat.c: applayed macro swap4 from Erik Rossen for display long values
	* configure.in: macro for check big-endian arch (sparc and mips) added

2002-08-27 Erik Rossen
        * 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
	* INSTALL: instruction to compile under Sparc Linux

2002-08-26 Roman Festchook
	* README: updates and spelling
        * 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

2002-08-19 17:42  Dan Pelleg
        * nwn/ap-nwn.c: minor change for compile under FreeBSD 

2002-08-08 22:56  Roman Festchook
        * configure.in, NEWS: version 1.0.4

2002-08-02 20:29  Roman Festchook
        * configure.in: moved configuration utilites into config dir 
        * atmel/*.c: code rewrited to don't use struct to unpack data that
	 comes from network (as suggect Erik Rossen its may fix problems
	 running utility on nonintel computer architectures).

2002-07-24 01:06  Roman Festchook
        * configure.in, common/common.c, acconfig.h, INSTALL: added compile
	 time option to disable regulation domain channel restrictions

2002-07-22 00:02  Roman Festchook
        * man/ap-atmel.8, man/ap-nwn.8: added manpages for ap-atmel and ap-nwn

2002-07-21 20:02  Roman Festchook
	* man/ap-trapd.8, man/ap-mrtg.8: added manpages for ap-trapd and ap-mrtg

2002-07-21 15:06  Roman Festchook
	* nwn/stations.c, atmel/auth_mac.c: getting data from AP algorithms
	 optimization

2002-07-21 01:24  Roman Festchook
	* common/oui.c: added displaying AP manufacturer using OUI value
        * README: spelling fixes

2002-07-18 14:53  Roman Festchook
        * nwn/stations.c: added info about waiting for data when getting
	 data from AP

2002-07-16 01:04  Roman Festchook
	* configure.in: version 1.0.3
	* common/ap_search.c, common/set_community.c: code of search and auth
	 functions moved into common for both utilites functions
	* Makefile.am: now packages will be compressed by bzip2 (to save
	 bandwith)

2002-07-15 19:31  Roman Festchook
	* common/scr.c, common/common.c, common/ap-utils.h: added info about
	 current AP at right bottom of the screen

2002-07-14 00:20  Roman Festchook
	* po, intl, m4: integration with GNU gettext for simlying localization
	 and translation
	* src: a lot of internal code optimization and spelling
	* nwn/search.c: AP search fixes
	* po/uk.po: ukrainian localization

2002-07-07  gettextize  
	* Makefile.am (SUBDIRS): Add intl.
	(ACLOCAL_AMFLAGS): New variable.
	(EXTRA_DIST): New variable.
	* configure.in (AC_OUTPUT): po/Makefile.in, m4/Makefile.

2002-07-07 05:20  Roman Festchook
	* ap-trapd: log additiomal info about agent that generate trap

2002-07-05 02:00 Roman Festchook
	* common/ap-cnf.h, *.c: common/ap-cnf.h renamed to common/ap-utils.h
	* nwn/menu.c, atmel/menu.c, common/menu.c, common/ap-utils.h,
	 common/Makefile.am: menu handling code rewrited to one universal
	  routine

2002-07-04 15:44 Roman Festchook
	* configure.in: version 1.0.2

2002-06-29 20:15 Roman Festchook
	* nwn/search.c: error messages fixes
	* configure.in: added test for Linux
	* atmel/ap-trapd.c: fixed displaying new IP when SettingPingIPAddress
	 trap received, also displaying mac address limited to related traps, 
	 bind to device code compiled only at Linux
	* Documentation/README.trapd: info about bind to device option code
	 work only at Linux
	* Documentation/THANKS: new contributor Dan Pelleg
	* common/ap-cnf.h, README: changed project name to Wireless Access
	 Point Utilites for Unix

2002-06-28 17:14 Roman Festchook
	* atmel/Makefile.am, nwn/Makefile.am, common/Makefile.am: added options
	 to compile on FreeBSD

2002-06-28 16:45 Dan Pelleg
	* atmel/ap-atmel.c, atmel/ap-mrtg.c, atmel/ap-trapd.c, atmel/bridge.c,
	atmel/radio.c, atmel/search.c, common/common.c, common/file.c,
	common/snmp.c, nwn/ap-nwn.c, nwn/search.c, nwn/sysinfo.c, nwn/wlan.c:
	 patch to compile and run on FreeBSD

2002-06-26 15:53 Roman Festchook
	* configure.in: version 1.0.1

2002-06-24 23:40 Roman Festchook
	* ap-trapd: by default installed into '/usr/local/sbin'
	* src: code cleanups and compiler warnings fixes

2002-06-21 16:34 Roman Festchook
	* */Makefile.am: added target style
	* atmel/ap-mrtg: code rearangement

2002-06-17 09:24  Roman Festchook
	* README: ap-amtel does work with an D-Link DWL 900AP wich is
	  (according to some google research it's an Linksys WAP11). Reported
	  by Jens Link . 

2002-06-16 18:48  Roman Festchook
	* ap-trapd: added compile time option to set nonprivileged account
	 for running utility

2002-06-16 03:12  Roman Festchook
	* Makefile: now Makefiles generated by GNU autoconf and automake
	* INSTALL: updated with info about new instalation procedures
	* ap-mrtg: added compile time option to disable warnings when unable
	 to get data from AP
	* atmel/aps.c: removed unnecessary code that read/set remote brige
	 BSSID
	* atmel/search.c, atmel/wlan.c, nwn/search.c, nwn/wlan.c: compile
	 time warnings fixed

2002-06-15 02:10  Roman Festchook
	* ap-atmel: added try to restore settings when fail to get KnownAPs
	 info

2002-06-09 23:33  Roman Festchook
	* version: 1.0
	* ap-mrtg: removed email from usage message
	* ap-mrtg and ap-trapd code: placed into atmel directory
	* Makefile: some optimization at subdirs and at top level
	* Documentation: mibs now back to package
	* NEWS, AUTHORS: added

2002-06-08 01:03  Roman Festchook
	* ap-trapd: fixed getting data from old trap body when processing
	    new trap

2002-06-06 14:29  Roman Festchook
	* ap-trapd: rewriten to log shorter messages without informative
	    data lost
	* Documentations: some updates for preparing to version 1.0

2002-06-05 00:01  Roman Festchook
	* ap-atmel: added warnings in potentially dangerous options:
		KnownAPs, Reset, Upload, Defaults, Restore

2002-06-01 00:20  Roman Festchook
	* version: 1.0pre3
	* ap-mrtg: added selecting AP to which get
	    Link Quality/Signal Strenght statistics, also updated documentation

2002-05-31 00:50  Scott L. Thomas, Roman Festchook
	* ap-mrtg: option to get Link Quality/Signal Strenght stat from AP in
		client mode added
	* Documentation/README.mrtg: description about getting Link
	 Quality/Signal	Strenght stat from AP in client mode added
	* Documentation/README.nwn: added info about basic rates setting
	* ap-atmel, ap-nwn: added backspace support when entering password

2002-05-30 14:05  Roman Festchook
	* ap-trapd: option to bind listening for traps
		on a specific interface added
	* Documentation/README.trapd: option to bind listening
	    for traps on a specific interface described
	* Documentation/README.nwn: added info about associated stations

2002-05-29 19:30  Roman Festchook
	* ap-nwn: fixed basic rates, AP name and ESSID displaying
	* ap-atmel, ap-nwn: some optimization for size 
	* snmp.c: memory leaks fixes when parsing received packets
	* ap-nwn: uptime displaying fixed

2002-05-27 00:03  Roman Festchook
	* version: 1.0pre2
	* ap-atmel: added Regulation domain restriction to select channel
	 in Test Mode
	* ap-atmel, ap-nwn: added floating dropdown menus for choose from
	 the list of options

2002-05-26 16:45  Roman Festchook
	* ap-nwn: fixed lenght bug in setting AP name

2002-05-25 14:05  Roman Festchook
	* Documentation: added banner image:))

2002-05-22 00:19  Roman Festchook
	* version: 1.0pre1
	* Documentation: additions and spelling
	* src: removed unused code

2002-05-21 20:06  Roman Festchook
	* ap-nwn: added option to find connected APs

2002-05-20 01:37  Roman Festchook
	* ap-nwn: added basic rates choose options, added WEP key set options,
		added setting prefered channel to operational channel value
	* Documentation: mibs excluded from program package (they come with
	 devices), also excluded power hack docs (readme has links to this
	 pages) - this greatly reduce package size:)

2002-05-18 19:51  Roman Festchook
	* ap-atmel: fixed bug with unable to repeat APs search,
	    other search fixes and improvements

2002-05-17 15:51  Roman Festchook
	* version: 0.9.6
	* ap-atmel: added option to find connected APs

2002-05-16 00:12  Roman Festchook
	* atmel/aps.c: removed timeout when getting KnownAPs stat
	    from AP in client mode

2002-05-15 20:57  Roman Festchook
	* ap-mrtg: added option to get associated stations stat
	* README.mrtg: info about stations stat
	
2002-05-11 08:49  Erik Rossen
	* src: fixed compile time errors and warnings
	* atmel/scr.c, nwn/scr.c: patch to get rid of the annoying flicker
		every time one changes a menu

2002-05-06 02:42  Roman Festchook
	* common/file.c: now AP ip and community string saved
	    in config file ~/., so no need to
	    input it after each program start
	* common/common.c: connection password at input
	    displayed with '*'
	* wlan.c: added Regulation Domain limit on setting channel
	* atmel/aps.c: Now KnownAP stat may be get without AP reset if AP
	    in client mode
	* atmel/radio.c: Antenna checks on Atmel, so user can't disable both
	    antenna, if he do this and save conf - AP restores factory
	    defaults, now it fixed
	
2002-05-05 22:39  Roman Festchook 
	* common/file.c: now Associated Stations list
	    may be saved to file ~/.stations.

2002-05-04 23:26  Roman Festchook 
	* version: 0.9.5
	* README.atmel: added description of most configuration options
	* Documentation: updated documentations
	* source tree: changed structure
	* ap-cnf: renamed to ap-atmel

2002-05-04 18:46  Roman Festchook 
	* ap-nwn: added utility to config Compex WP11

2002-05-02 18:46  Roman Festchook 
	* ap-atmel/auth.c: fixed mac number error when deleting addresses
	 from list
	* snmp.c: now returned from agent oid accessible in program

2002-05-01 17:43  Roman Festchook 
	* snmp.c: added support for Compex WP11 SNMP-agent

2002-05-01 13:01  Roman Festchook 
	* FAQ: added FAQ 

2002-04-30 16:40  Roman Festchook 
	* src/ap-trapd.c: fixed bug with SettingPingIPAddress trap message 

2002-04-27 00:17  Roman Festchook 
	* src/sysinfo.c: added description for Regulation Domain

2002-04-23 21:12  Roman Festchook 
	* version: 0.9
	* src/test.c: finished test mode
	* docs: documentation updates

2002-04-23 19:00  Roman Festchook 
	* src/radio.c: added option to enable/disable antennas
	* src/menu.c: small menu rearangement again:))

2002-04-22 17:08  Roman Festchook 
	* src/auth.c: fixed mac number error when deleting addresses from list
	* src/menu.c: small menu rearangement

2002-04-15 20:20 Kucherak Sergij, Roman Festchook 
	* version: 0.8.2
	* INSTALL, README.ap-cnf: added ukrainian docs

2002-04-15 20:01  Roman Festchook 
	* src/aps.c: added displaying Link Quality and Signal Strenght

2002-04-14 23:18  Roman Festchook 
	* src/stat.c: fixed bug, that cause unable to exit
	    problem when can't to get Ethernet or Wireless stat
	* src/aps.c: addded showing Preamble and Wep, also fixed
	    bug with displaying Network Type
	* src/test.c: added unknown OID (see doc/todo),
	    test mode still not work
	* src/snmp.c: fixed some warnings from gcc version pre3    

2002-04-14 00:12  Roman Festchook 
	* src/ap-cnf.c: showing cursor when entering
	    password/community in connect screen

2002-04-12 00:14  Roman Festchook 
	* src/auth.c: fixed displaying and setting mac authorization status

2002-04-07 22:32  Roman Festchook 
	* version: 0.8.1
	* src/menu.c: added printing tips to all menu options
	
2002-04-07 13:52  Roman Festchook 
	* src/Makefile: added 'install' option

2002-04-06 23:50  Roman Festchook 
	* name: changed name to Access Point SNMP Utils for Linux
	* src/stat.c: added mac address displaying in SysInfo,
	    correctly printed sysinfo string
	* README: splited docs at top level directory - added
	    INSTALL and README.util, added additional info

2002-04-04 22:50  Roman Festchook 
	* src/ap-trapd.c: after opening socket changed UID and GID
	    to non root user, I think it's more secure; also
	    added check from what enterprise this trap came
	* src/ap-cnf.c: added info about not displayed characters
	    when entering password/community

2002-04-04 01:12  Roman Festchook 
	* src: added info about retrieving/setting data on help string
	* src/aps.c: more informative help string
	* src/menu.c: option APs renamed to KnownAPs

2002-04-02 14:34  Roman Festchook 
	* version: 0.8
	* src/aps.c: more verbose info when searching for APs
	* README: added warnins about using Statistics/APs option
		and info about ap-trapd
	* src: code cleanups to remove some warning when compiling gcc 2.9x

2002-04-01 21:36  Roman Festchook 
	* src/wlan.c: fixed bug with AP name lenght when setting AP name,
	    this may cause ip address change like
	    192.168.97.32 => 0.192.168.97. So I think it's critical bug.

2002-03-31 22:58  Roman Festchook 
	* src/wlan.c: fixed bug with ESSID lenght when setting ESSID,
	    this make impossible to set ESSID in some cases
	* src/trapd.c: added SNMP traps processing daemon

2002-03-27 13:58  Roman Festchook 
	* version: 0.7.6
	* src/ap-mrtg: error reports fixes
	* src/power.c: power level settings changed,
	    now optimal values may be experimentally choosed	

2002-03-21 14:32  Roman Festchook 
	* src/smnp.c: conection timeout fixes

2002-03-23 23:16  Roman Festchook 
	* version: 0.7.5
	* src/auth.c: fixed bug with mac addresses num = 65535, which mean 0,
	    this may cause problems configuring absolutelly new AP
	* src/aps.c: more safe KnownAPs function - now it restores parameters
	 after requesting known aps info
	* src/cmd.c: upload configuration fixes    

2002-03-11 02:01  Roman Festchook 
	* src/snmp.c: SNMP packets assembly rewriten to work correctly
	     with packets which size more than 128 bytes

2002-03-09 02:15  Roman Festchook 
	* version: 0.7.4
	* src: more verbose parameters description, removed unused code
	* ap-cnf: added screen "About", just about me and my program:))
	* ap-mrtg: errors printed in MRTG parsable format
	* TODO: new goals

2002-03-07 11:20  Roman Festchook 
	* version: 0.7.3
	* src/snmp.c: fixed bug with alarm handler
	* src/stat.c, src/auth.c: removed mac addresses limit, added
	    option to save Associated Stations mac addresses to file.

2002-03-03 13:22  Roman Festchook 
	* version: 0.7.2
	* src: many small bugfixes and code cleanups
	* src/stat.c: Ethernet, Wireless and Wireless environment screens
	    now refreshed every second with updated data
	* src/test.c: start working on test mode settings, but it not useful
	 for now
	* README: new homepage url

2002-03-01 23:53  Roman Festchook 
	* version: 0.7.1-pre
	* src/snmp.c: Wireless stat now count all packets not only Unicast
	* src/power.c: setting power level changes
	* README: changed info about setting power level

2002-02-28 00:52  Roman Festchook 
	* src/snmp.c, src/ap-cnf.c, src/ap-mrtg.c: connect blocks fixes

2002-02-27 20:15  Roman Festchook 
	* src/power.c: power level now displayed with some kind of graph

2002-02-26 14:22  Roman Festchook 
	* version: 0.7
	* src/wep.c: added Privacy settings, please test

2002-02-25 16:44  Roman Festchook 
	* spelling: spelling heads up:)) (thanks Charles Henderson)

2002-02-25 14:35  Roman Festchook
	* version: 0.6.1
	* src/ap-mrtg.c: added utility to use MRTG for create stats graphics
	* README: added info about using MRTG to request AP

2002-02-24 01:10  Roman Festchook
	* src/power.c: added Signal Power settings
	* README: added info about Signal Power settings
	* version: 0.6

2002-02-23 16:53  Roman Festchook
	* src/bridge.c: added SNMP Traps switch option
	* src/wireless.c: interface improvement when setting Basic and
	 Supported rates
	* src/auth.c: socket to AP now opened in nonblock mode
	* src/snmp.c: disabled program halt when timeout data read from socket
	* TODO: new goals
	* THANKS: added

2002-02-21 22:52  Roman Festchook
	* src/bridge.c: fixed broken setting RemoteBSSID in no
			Access Point operational modes

2002-02-21 14:17  Roman Festchook
	* doc/: added some docs about setting signal power
	* doc/mib: added mibs from another APs
	* TODO: added setting signal power
	* README: added additional info
	* src/: new features - new code, version 0.5

2002-02-13 23:22  Roman Festchook
	* ChangeLog: There was no ChangeLog here, so I added one.