# # Copyright (C) 2012-2014 Gui Iribarren # # This is free software, licensed under the GNU General Public License v3. # include $(TOPDIR)/rules.mk GIT_COMMIT_DATE:=$(shell git log -n 1 --pretty=%ad --date=short . ) GIT_COMMIT_TSTAMP:=$(shell git log -n 1 --pretty=%at . ) PKG_NAME:=batman-adv-auto-gw-mode PKG_VERSION=$(GIT_COMMIT_DATE)-$(GIT_COMMIT_TSTAMP) include $(INCLUDE_DIR)/package.mk define Package/$(PKG_NAME) CATEGORY:=LibreMesh TITLE:=Set batman-adv gw_mode by internet availability MAINTAINER:=Gui Iribarren URL:=http://libremesh.org DEPENDS:= +batctl +kmod-batman-adv +watchping +dnsmasq-dhcpv6 +ip PKGARCH:=all endef define Package/$(PKG_NAME)/description Adds watchping hooks that set gw_mode=server when WAN port gets internet access gw_mode=client when connection is severed Also adds a hotplug.d hook that sends a DHCP request when another batman-adv router announces itself as a gw_mode=server. So if you install this package on every node of a batman-adv mesh network, you can connect internet access to the WAN port of any (one or more) nodes, it will be autodetected and the rest of the nodes will route through it (or them) endef define Build/Compile endef define Package/$(PKG_NAME)/install $(INSTALL_DIR) $(1)/ $(CP) ./files/* $(1)/ endef $(eval $(call BuildPackage,$(PKG_NAME)))