owlps/TODO

79 lines
2.4 KiB
Plaintext

* Global
- Makefiles:
° Use -D DEBUG instead of #defines.
° Use echo instead of echo -e.
° Translate comments & help.
- Use string for network exchanges?
- Mark arguments as const in function headers if needed
That is done in the owlps-positioning C++ code, but not constantly
in C modules. [Done in libowlps & libowlps-client.]
- Allow to use hostnames instead of IP addresses in all modules
getaddrinfo(3) (or gethostbyname(3)) should be used when opening
sockets in libowlps, then string buffer size have to be adapted in
all modules to be able to contain a long hostname.
- Use struct ether_addr to store MAC addresses?
We could use the struct ether_addr to store binary MAC addresses,
and convert them to strings with ether_ntoa() instead of
owl_mac_bytes_to_string(). See ether_aton(3).
* libowlps
- Currently unused functions:
° owl_timestamp_is_null()
° owl_iface_channel_hop()
° owl_iface_set_channel() (except by owl_iface_channel_hop())
- Move owl_iface_mode_monitor() in owlps-listenerd.c.
* Aggregator
- inet_ntoa() is not secure with threads
(But it is currently used by only one thread.) Use inet_ntop()
instead?
- Use locks to read/write the AP list
Currently, several threads can access the list simultaneously, and
that's not cool!
- Refactor got_request().
- Use the type of a request to identify it?
(along with the mobile MAC address and the request time)
- got_request(): option for the maximal difference time
For implicit packet, we consider that packet from the same MAC and
received within an interval of 10ms are part of the same
request. We should define an option to allow user to choose the
time he wants.
- Allow blank parameters for output options.
* Listener
- Refactor and review read_packet().
- Listen for autocalibration requests without sending requests?
- read_packet(): use ieee80211_header_size for all implicit packets
Currently the size is corrected only for data packets.
- Move endianess #defines in libowlps?
- Merge Makefile and Makefile_atheros?
Use autohell?
- Use positive (USE_CONFUSE) and negative (NO_USE_PTHREAD) options?
The default options could be modified, but that's not so important,
is it?
* Client
- Allow to use a string for the direction?
Could be nice, but probably useless.
* Positioning
- Has its own fat TODO file, which I should translate.
* writeInDb
- Do something about that
° Merge in owlps-positioning?
° Delete?