Changeset 29215


Ignore:
Timestamp:
2011-11-17T11:47:23+01:00 (6 years ago)
Author:
nico
Message:

packages/rarpd: use uci config, cleanup

Location:
packages/net/rarpd
Files:
1 added
1 deleted
2 edited

Legend:

Unmodified
Added
Removed
  • packages/net/rarpd/Makefile

    r28921 r29215  
    1010PKG_NAME:=rarpd 
    1111PKG_VERSION:=1.1 
    12 PKG_RELEASE:=2 
     12PKG_RELEASE:=3 
    1313 
    1414PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz 
     
    3737endef 
    3838 
    39 define Build/Configure 
    40         $(call Build/Configure/Default, \ 
    41                 --with-libnet="$(STAGING_DIR)/usr/lib/libnet-1.0.x" \ 
    42                 --with-pcap="$(STAGING_DIR)/usr" \ 
    43                 , \ 
    44                 CFLAGS="$$$$CFLAGS -DNEW_LIBNET_INTERFACE" \ 
    45         ) 
    46 endef 
     39CONFIGURE_ARGS+= \ 
     40        --with-libnet="$(STAGING_DIR)/usr/lib/libnet-1.0.x" \ 
     41        --with-pcap="$(STAGING_DIR)/usr" \ 
     42 
     43CONFIGURE_VARS+= \ 
     44        CFLAGS="$$$$CFLAGS -DNEW_LIBNET_INTERFACE" \ 
    4745 
    4846define Package/rarpd/install 
    4947        $(INSTALL_DIR) $(1)/usr/sbin 
    50         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/rarpd $(1)/usr/sbin/ 
    51         $(INSTALL_DIR) $(1)/etc/default 
    52         install -m644 ./files/rarpd.default $(1)/etc/default/rarpd 
     48        $(CP) $(PKG_INSTALL_DIR)/usr/sbin/rarpd $(1)/usr/sbin/ 
     49        $(INSTALL_DIR) $(1)/etc/config 
     50        $(INSTALL_DATA) ./files/rarpd.config $(1)/etc/config/rarpd 
    5351        $(INSTALL_DIR) $(1)/etc/init.d 
    54         install -m755 ./files/rarpd.init $(1)/etc/init.d/rarpd 
     52        $(INSTALL_BIN) ./files/rarpd.init $(1)/etc/init.d/rarpd 
     53endef 
     54 
     55define Package/rarpd/conffiles 
     56/etc/config/rarpd 
    5557endef 
    5658 
  • packages/net/rarpd/files/rarpd.init

    r28921 r29215  
    55 
    66SERVICE_DAEMONIZE=1 
     7SERVICE_WRITE_PID=1 
    78 
    8 PROG="rarpd" 
    9 COMMAND="/usr/sbin/$PROG" 
    10 DEFAULT="/etc/default/$PROG" 
     9append_bool() { 
     10        local var="$1" 
     11        local section="$2" 
     12        local option="$3" 
     13        local value="$4" 
     14        local _val 
     15        config_get_bool _val "$section" "$option" 0 
     16        [ $_val -gt 0 ] && append "$var" "$value" 
     17} 
     18 
     19append_string() { 
     20        local var="$1" 
     21        local section="$2" 
     22        local option="$3" 
     23        local val="$4" 
     24        local _val 
     25        config_get _val "$section" "$option" 
     26        [ -n "$_val" ] && append "$var" "$val $_val" 
     27} 
     28 
     29config_get_ifname() { 
     30        local var="$1" 
     31        local section="$2" 
     32        local option="$3" 
     33        local val="$4" 
     34        local _val 
     35        config_get _val "$section" "$option" "$val" 
     36        [ -n "$_val" ] && config_get "$var" "$_val" 'ifname' "$_val" 
     37} 
     38 
     39section_enabled() { 
     40        local enabled 
     41        config_get_bool enabled "$1" 'enabled' 0 
     42        [ $enabled -gt 0 ] 
     43} 
     44 
     45start_instance() { 
     46        local section="$1" 
     47        local if 
     48        local args 
     49 
     50        section_enabled "$section" || return 1 
     51 
     52        config_get_ifname if "$section" 'interface' 'lan' 
     53        args="-n -i $if" 
     54        append_string args "$section" 'ethers' '-e' 
     55        append_bool args "$section" 'verbose' '-v' 
     56 
     57        SERVICE_PID_FILE="/var/run/rarpd-${if}.pid" 
     58        service_start /usr/sbin/rarpd $args 
     59} 
     60 
     61stop_instance() { 
     62        local section="$1" 
     63        local id 
     64        local if 
     65 
     66        section_enabled "$section" || return 1 
     67 
     68        config_get_ifname if "$section" 'interface' 'lan' 
     69 
     70        SERVICE_PID_FILE="/var/run/rarpd-${if}.pid" 
     71        service_stop /usr/sbin/rarpd 
     72} 
    1173 
    1274start() { 
    13         [ -f $DEFAULT ] && . $DEFAULT 
    14         service_start $COMMAND -n $OPTIONS 
     75        include /lib/network 
     76        scan_interfaces 
     77        config_load 'rarpd' 
     78        config_foreach start_instance 'rarpd' 
    1579} 
    1680 
    1781stop() { 
    18         service_stop $COMMAND 
     82        include /lib/network 
     83        scan_interfaces 
     84        config_load 'rarpd' 
     85        config_foreach stop_instance 'rarpd' 
    1986} 
Note: See TracChangeset for help on using the changeset viewer.