/mandos/trunk

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/trunk

« back to all changes in this revision

Viewing changes to network-hooks.d/bridge

  • Committer: Teddy Hogeborn
  • Date: 2019-07-29 16:35:53 UTC
  • Revision ID: teddy@recompile.se-20190729163553-1i442i2cbx64c537
Make tests and man page examples match

Make the tests test_manual_page_example[1-5] match exactly what is
written in the manual page, and add comments to manual page as
reminders to keep tests and manual page examples in sync.

* mandos-ctl (Test_commands_from_options.test_manual_page_example_1):
  Remove "--verbose" option, since the manual does not have it as the
  first example, and change assertion to match.
* mandos-ctl.xml (EXAMPLE): Add comments to all examples documenting
  which test function they correspond to.  Also remove unnecessary
  quotes from option arguments in fourth example, and clarify language
  slightly in fifth example.

Show diffs side-by-side

added added

removed removed

Lines of Context:
6
6
# configuration file(s) should be copied into the
7
7
# /etc/mandos/network-hooks.d directory.
8
8
9
 
# Copyright © 2011 Teddy Hogeborn
10
 
# Copyright © 2011 Björn Påhlsson
 
9
# Copyright © 2012-2018 Teddy Hogeborn
 
10
# Copyright © 2012-2018 Björn Påhlsson
11
11
12
12
# Copying and distribution of this file, with or without modification,
13
13
# are permitted in any medium without royalty provided the copyright
29
29
    . "$CONFIG"
30
30
fi
31
31
 
32
 
if [ -z "$BRIDGE" -o -z "$PORT_ADDRESSES" ]; then
 
32
if [ -z "$BRIDGE" ] || [ -z "$PORT_ADDRESSES" ]; then
33
33
    exit
34
34
fi
35
35
 
36
 
if [ -n "$DEVICE" -a "$DEVICE" != "$BRIDGE" ]; then
37
 
    exit
 
36
if [ -n "$DEVICE" ]; then
 
37
    case "$DEVICE" in
 
38
        *,"$BRIDGE"|*,"$BRIDGE",*|"$BRIDGE",*|"$BRIDGE") :;;
 
39
        *) exit;;
 
40
    esac
38
41
fi
39
42
 
40
43
brctl="/sbin/brctl"
45
48
    fi
46
49
done
47
50
 
48
 
case "$1" in
49
 
    start)
50
 
        "$brctl" addbr "$BRIDGE"
51
 
        for address in $PORT_ADDRESSES; do
52
 
            interface=`addrtoif "$address"`
53
 
            "$brctl" addif "$BRIDGE" "$interface"
54
 
            ip link set dev "$interface" up
55
 
        done
56
 
        ip link set dev "$BRIDGE" up
57
 
        sleep "${DELAY%%.*}"
58
 
        if [ -n "$IPADDRS" ]; then
59
 
            for ipaddr in $IPADDRS; do
60
 
                ip addr add "$ipaddr" dev "$BRIDGE"
61
 
            done
62
 
        fi
63
 
        if [ -n "$ROUTES" ]; then
64
 
            for route in $ROUTES; do
65
 
                ip route add "$route" dev "$BRIDGE"
66
 
            done
67
 
        fi
68
 
        ;;
69
 
    stop)
70
 
        ip link set dev "$BRIDGE" down
71
 
        for address in $PORT_ADDRESSES; do
72
 
            interface=`addrtoif "$address"`
73
 
            ip link set dev "$interface" down
74
 
            "$brctl" delif "$BRIDGE" "$interface"
75
 
        done
76
 
        "$brctl" delbr "$BRIDGE"
 
51
do_start(){
 
52
    "$brctl" addbr "$BRIDGE"
 
53
    for address in $PORT_ADDRESSES; do
 
54
        interface=`addrtoif "$address"`
 
55
        "$brctl" addif "$BRIDGE" "$interface"
 
56
        ip link set dev "$interface" up
 
57
    done
 
58
    ip link set dev "$BRIDGE" up
 
59
    sleep "${DELAY%%.*}"
 
60
    if [ -n "$IPADDRS" ]; then
 
61
        for ipaddr in $IPADDRS; do
 
62
            ip addr add "$ipaddr" dev "$BRIDGE"
 
63
        done
 
64
    fi
 
65
    if [ -n "$ROUTES" ]; then
 
66
        for route in $ROUTES; do
 
67
            ip route add "$route" dev "$BRIDGE"
 
68
        done
 
69
    fi
 
70
}
 
71
 
 
72
do_stop(){
 
73
    ip link set dev "$BRIDGE" down
 
74
    for address in $PORT_ADDRESSES; do
 
75
        interface=`addrtoif "$address"`
 
76
        ip link set dev "$interface" down
 
77
        "$brctl" delif "$BRIDGE" "$interface"
 
78
    done
 
79
    "$brctl" delbr "$BRIDGE"
 
80
}
 
81
 
 
82
case "${MODE:-$1}" in
 
83
    start|stop)
 
84
        do_"${MODE:-$1}"
77
85
        ;;
78
86
    files)
79
87
        echo /bin/ip