include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=macremapper
-PKG_VERSION:=1.0.0
+PKG_VERSION:=1.1.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/ewsi/$(PKG_NAME)/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=f054201dd805ce005b89606a507b58a5717d383a4339c69dfdc02f0202935437
+PKG_HASH:=f9580427803123d13d50f3422623a37212034a5d72a485f9c04904f19509e4bb
PKG_MAINTAINER:=Carey Sonsino <careys@edgewaterwireless.com>
PKG_LICENSE:=GPL-2.0-only
--- a/kernelmod/main.c
+++ b/kernelmod/main.c
-@@ -91,8 +91,11 @@ modinit( void ) {
+@@ -98,8 +98,11 @@ modinit( void ) {
rv = mrm_rcdb_init();
if (rv != 0) return rv;
mrm_init_ctlfile(); /* XXX not checking for failure! */
printk(KERN_INFO "MRM The MAC Address Re-Mapper is now in the kernel\n");
-@@ -103,7 +106,11 @@ modinit( void ) {
+@@ -110,7 +113,11 @@ modinit( void ) {
static void __exit
modexit( void ) {
mrm_destroy_ctlfile();
include $(TOPDIR)/rules.mk
PKG_NAME:=libdcwproto
-PKG_VERSION:=1.0.0
+PKG_VERSION:=1.1.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/ewsi/$(PKG_NAME)/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=5bda395c648aa12eb90515c29024029738fde1a8f73a2cbc553be1c6962c2629
+PKG_HASH:=b3d12f2533eafbb293bbf27608ff39520508d955a084f33894c594f39d2f7c8e
PKG_MAINTAINER:=Carey Sonsino <careys@edgewaterwireless.com>
PKG_LICENSE:=Apache-2.0
include $(TOPDIR)/rules.mk
PKG_NAME:=libdcwsocket
-PKG_VERSION:=1.0.0
+PKG_VERSION:=1.1.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/ewsi/$(PKG_NAME)/tar.gz/v$(PKG_VERSION)?
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
-PKG_HASH:=c7f6c69a5246fe1f184c21585f0805ceaca09c3c087ae439ded7ed4d25c7a3fa
+PKG_HASH:=71383c4d8c5f58c1299a3717d7de9a8b5dabfd51a2dcf9993248f2709908d23a
PKG_MAINTAINER:=Carey Sonsino <careys@edgewaterwireless.com>
PKG_LICENSE:=Apache-2.0
include $(TOPDIR)/rules.mk
PKG_NAME:=dcstad
-PKG_VERSION:=1.0.0
+PKG_VERSION:=1.1.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/ewsi/$(PKG_NAME)/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=3b146ea22bc5480d8264c5ea269831d25993673aa90a9e82dc2dc601a111da55
+PKG_HASH:=3bed8a5051c92cd41ba3477d2db211df8f10fd6e49946f0b74cf643464c1c201
PKG_MAINTAINER:=Carey Sonsino <careys@edgewaterwireless.com>
PKG_LICENSE:=Apache-2.0
include $(TOPDIR)/rules.mk
PKG_NAME:=dcwapd
-PKG_VERSION:=1.0.0
+PKG_VERSION:=1.1.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/ewsi/$(PKG_NAME)/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=750a08abccd88d9aeda942307f76ce5711181c06f9f3e8fded5cb5ce42bac323
+PKG_HASH:=58e52bf4e7526b2f26319740549dbcc6f6ab505f587815ee8731e40f7fecb625
PKG_MAINTAINER:=Carey Sonsino <careys@edgewaterwireless.com>
PKG_LICENSE:=Apache-2.0
+++ /dev/null
-# Description
-
-This directory contains package files for including Dual Channel Wi-Fi (dcwifi) components in an OpenWrt build.
-
-# dcwifi Packages
-
-The dcwifi packages can be found in the menuconfig in the following locations:
-
- * dcstad: `Network -> Routing and Redirection`
- * dcwapd: `Network -> Routing and Redirection`
- * libdcwproto: `Libraries -> Networking`
- * libdcwsocket: `Libraries -> Networking`
- * macremapper: `Kernel modules -> Network Support` (listed as `kmod-macremapper`)
- * mrmctl: `Utilities`
+++ /dev/null
---- a/src/main.c
-+++ b/src/main.c
-@@ -190,7 +190,7 @@ main( int argc, char *argv[] ) {
- rv = 1; /* failure unless proven otherwise */
-
- /* first initialize and parse the command line */
-- bzero(&cfg, sizeof(cfg));
-+ memset(&cfg, 0, sizeof(cfg));
- parse_cmdline(&cfg, argc, argv);
-
- dcwloginfof("%s\n", "DCW Station Daemon Starting Up...");
+++ /dev/null
---- a/dcw/controller.cxx
-+++ b/dcw/controller.cxx
-@@ -195,7 +195,7 @@ void Controller::OnStationUnjoin(const MacAddress& primaryMacAddr, const Message
- //remove any channel bondings matching the provided data channel mac addresses
- for (unsigned i = 0; i < m.data_macaddr_count; i++) {
- const ::dcw::MacAddress dcaddr(m.data_macaddrs[i]);
-- const ::dcw::TrafficPolicy::DataChannelMap::iterator dcmEntry = state.policy.dataChannels.find(dcaddr);
-+ ::dcw::TrafficPolicy::DataChannelMap::iterator dcmEntry = state.policy.dataChannels.find(dcaddr);
- if (dcmEntry == state.policy.dataChannels.end()) continue;
- if (dcmEntry->second == NULL) {
- dcwlogwarnf("Data channel MAC address %s on client %s is not currently bonded\n", dcaddr.ToString().c_str(), primaryMacAddr.ToString().c_str());
-@@ -238,7 +238,7 @@ void Controller::OnStationAck(const MacAddress& primaryMacAddr, const Message& m
- dcwlogdbgf("Got a station ACK from %s\n", primaryMacAddr.ToString().c_str());
-
- // first make sure this client has actually sent a join first...
-- const ClientStateMap::iterator client = _clients.find(primaryMacAddr);
-+ ClientStateMap::iterator client = _clients.find(primaryMacAddr);
- if (client == _clients.end()) {
- dcwlogerrf("Got a client ACK without a station join from %s\n", primaryMacAddr.ToString().c_str());
- Message reply(DCWMSG_AP_REJECT_STA);
---- a/dcwposix/processsignalmanager.cxx
-+++ b/dcwposix/processsignalmanager.cxx
-@@ -40,7 +40,7 @@ ProcessSignalManager::~ProcessSignalManager() {
- }
-
- void ProcessSignalManager::RegisterEventHandler(const int signum, ::dcwposix::ProcessSignalManager::EventHandler& eventHandler) {
-- const SignalMap::iterator i = _sigmap.find(signum);
-+ SignalMap::iterator i = _sigmap.find(signum);
- if (i == _sigmap.end()) {
- //be sure to preseve the old signal when inserting a new "unseen" signal
- _sigmap[signum].insert(&eventHandler);
-@@ -53,7 +53,7 @@ void ProcessSignalManager::RegisterEventHandler(const int signum, ::dcwposix::Pr
- }
-
- void ProcessSignalManager::UnRegisterEventHandler(const int signum, ::dcwposix::ProcessSignalManager::EventHandler& eventHandler) {
-- const SignalMap::iterator i = _sigmap.find(signum);
-+ SignalMap::iterator i = _sigmap.find(signum);
-
- if (i == _sigmap.end()) {
- dcwlogwarnf("Attempting to unregister handler %p non-registered process signal #%d\n", &eventHandler, signum);
\ No newline at end of file
+++ /dev/null
---- a/dcwlinux/macremapper_driver.cxx
-+++ b/dcwlinux/macremapper_driver.cxx
-@@ -174,7 +174,7 @@ void MacRemapperDriver::ApplyClientTrafficPolicy(const dcw::MacAddress& primaryA
- }
-
- //populate our remap ioctl()
-- bzero(&re, sizeof(re));
-+ memset(&re, 0, sizeof(re));
- strncpy(re.filter_name, policy.trafficFilterProfile->GetName(), sizeof(re.filter_name));
- memcpy(re.match_macaddr, primaryAddr.Value, sizeof(re.match_macaddr));
-
+++ /dev/null
---- a/src/dcwproto.c
-+++ b/src/dcwproto.c
-@@ -20,12 +20,8 @@
-
-
-
--#ifdef WIN32
--#define bzero(ptr, size) memset(ptr, 0, size)
--#else
- #include <config.h>
- #include <strings.h>
--#endif
- #include <dcwproto.h>
-
- #include <string.h>
-@@ -95,7 +91,7 @@ dcwmsg_marshal_sta_ack(struct dcwmsg_sta_ack * const output, const unsigned char
-
- /* copy in the data ssid string bytes */
- if (buf_len < copy_size) return 0;
-- bzero(output->bonded_data_channels[i].ssid, sizeof(output->bonded_data_channels[i].ssid));
-+ memset(output->bonded_data_channels[i].ssid, 0, sizeof(output->bonded_data_channels[i].ssid));
- memcpy(output->bonded_data_channels[i].ssid, buf, copy_size);
- buf_len -= copy_size;
- buf += copy_size;
-@@ -134,7 +130,7 @@ dcwmsg_marshal_ap_accept_sta(struct dcwmsg_ap_accept_sta * const output, const u
-
- /* copy in the data ssid string bytes */
- if (buf_len < copy_size) return 0;
-- bzero(output->data_ssids[i], sizeof(output->data_ssids[i]));
-+ memset(output->data_ssids[i], 0, sizeof(output->data_ssids[i]));
- memcpy(output->data_ssids[i], buf, copy_size);
- buf_len -= copy_size;
- buf += copy_size;
+++ /dev/null
---- a/src/dcwsocket.c.linux
-+++ b/src/dcwsocket.c.linux
-@@ -100,10 +100,10 @@ dcwsock_open(const char * const ifname) {
- }
-
- /* sanitize our data structs... defensive */
-- bzero(rv, sizeof(*rv));
-- bzero(&ifr, sizeof(ifr));
-- bzero(&sall, sizeof(sall));
-- bzero(&sfp, sizeof(sfp));
-+ memset(rv, 0, sizeof(*rv));
-+ memset(&ifr, 0, sizeof(ifr));
-+ memset(&sall, 0, sizeof(sall));
-+ memset(&sfp, 0, sizeof(sfp));
-
- /* open a raw socket... "ETH_P_ALL" says take EVERYTHING
- (this means that it is IMPERATIVE to apply a filter)
-diff --git a/src/dcwsocket.c.osx b/src/dcwsocket.c.osx
-index abead10..75cda2f 100644
---- a/src/dcwsocket.c.osx
-+++ b/src/dcwsocket.c.osx
-@@ -90,10 +90,10 @@ dcwsock_open(const char * const ifname) {
- }
-
- /* sanitize our data structs... defensive */
-- bzero(rv, sizeof(*rv));
-- bzero(&dmx_desc, sizeof(dmx_desc));
-- bzero(&proto_desc, sizeof(proto_desc));
-- bzero(&snd, sizeof(snd));
-+ memset(rv, 0, sizeof(*rv));
-+ memset(&dmx_desc, 0, sizeof(dmx_desc));
-+ memset(&proto_desc, 0, sizeof(proto_desc));
-+ memset(&snd, 0, sizeof(snd));
-
- /* open a "NDRV" socket... */
- rv->fd = socket(PF_NDRV, SOCK_RAW, 0);
-@@ -201,7 +201,7 @@ dcwsock_send( dcw_socket_t s, const void * const buf, const unsigned buf_size, c
- fill out a link-level sockaddr cause we can only
- use sendto() with PF_NDRV...
- */
-- bzero(&sdl, sizeof(sdl));
-+ memset(&sdl, 0, sizeof(sdl));
- sdl.sdl_len = sizeof(sdl);
- sdl.sdl_index = 0;
- sdl.sdl_type = IFT_ETHER;
+++ /dev/null
---- a/userland/mrmctl/mrmctl.c
-+++ b/userland/mrmctl/mrmctl.c
-@@ -139,7 +139,7 @@ remap(int argc, char **argv) {
- if (argc < 5) return 1; /* defensive */
-
- /* initialize variables and put things into human-readable variable names */
-- bzero(&re, sizeof(re));
-+ memset(&re, 0, sizeof(re));
- filter_name = argv[2];
- match_macaddr = argv[3];
-
-diff --git a/userland/mrmfilterparser/mrm_filter_conf_parser.c b/userland/mrmfilterparser/mrm_filter_conf_parser.c
-index 926fa76..f5c54c1 100644
---- a/userland/mrmfilterparser/mrm_filter_conf_parser.c
-+++ b/userland/mrmfilterparser/mrm_filter_conf_parser.c
-@@ -319,7 +319,7 @@ filter_file_loadf(struct mrm_filter_config * const output, FILE * const f) {
- return -1;
-
- output->rules_active = 0;
-- bzero(output->rules, sizeof(output->rules)); /* defensive */
-+ memset(output->rules, 0, sizeof(output->rules)); /* defensive */
-
- for (linenum = 1; fgets(buf, sizeof(buf), f) != NULL; linenum++) {
-
include $(TOPDIR)/rules.mk
PKG_NAME:=mrmctl
-PKG_VERSION:=1.0.0
+PKG_VERSION:=1.1.0
PKG_RELEASE:=1
PKG_SOURCE:=macremapper-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/ewsi/macremapper/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=f054201dd805ce005b89606a507b58a5717d383a4339c69dfdc02f0202935437
+PKG_HASH:=f9580427803123d13d50f3422623a37212034a5d72a485f9c04904f19509e4bb
PKG_BUILD_DIR:=$(BUILD_DIR)/macremapper-$(PKG_VERSION)
PKG_MAINTAINER:=Carey Sonsino <careys@edgewaterwireless.com>
include $(INCLUDE_DIR)/package.mk
define Package/mrmctl
- SECTION:=utils
- CATEGORY:=Utilities
- TITLE:=mrmctl utility (macremapper kernel module)
+ SECTION:=net
+ CATEGORY:=Network
+ SUBMENU:=Routing and Redirection
+ TITLE:=Dual-Channel WiFi macremapper utility
URL:=https://www.edgewaterwireless.com
DEPENDS:= +kmod-macremapper
endef