summaryrefslogtreecommitdiff
path: root/src/etc/dhcp/dhclient-exit-hooks.d/03-vyos-dhclient-hook
blob: 35721d009393c316cb7dc0ed2e8e7d7c15d9116f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#!/bin/sh

# Author: Stig Thormodsrud <stig@vyatta.com>
# Date: 2007
# Description: dhcp client hook

# **** License ****
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# General Public License for more details.
#
# This code was originally developed by Vyatta, Inc.
# Portions created by Vyatta are Copyright (C) 2006, 2007, 2008 Vyatta, Inc.
# All Rights Reserved.
# **** End License ****

# To enable this script set the following variable to "yes"
RUN="yes"

proto=""
if [[ $reason =~ ^(REBOOT6|INIT6|EXPIRE6|RELEASE6|STOP6|INFORM6|BOUND6|REBIND6|DELEGATED6)$ ]]; then
        proto="v6"
fi

if [ "$RUN" = "yes" ]; then
        BASE_PATH=$(python3 -c "from vyos.defaults import directories; print(directories['isc_dhclient_dir'])")
        LOG=${BASE_PATH}/dhclient_"$interface"."$proto"lease
        echo `date` > $LOG

        for i in reason interface new_expiry new_dhcp_lease_time medium \
                        alias_ip_address new_ip_address new_broadcast_address \
                        new_subnet_mask new_domain_name new_network_number \
                        new_domain_name_servers new_routers new_static_routes \
			new_dhcp_server_identifier new_dhcp_message_type \
                        old_ip_address old_subnet_mask old_domain_name \
                        old_domain_name_servers old_routers \
                        old_static_routes; do
                echo $i=\'${!i}\' >> $LOG
        done
fi