Update of /cvsroot/dhcp-agent/dhcp-agent/conf
In directory sc8-pr-cvs1:/tmp/cvs-serv30900/conf
Modified Files:
default.sysconf
Log Message:
added reconfigure-interface and code to handle it from rebind/renew
Index: default.sysconf
===================================================================
RCS file: /cvsroot/dhcp-agent/dhcp-agent/conf/default.sysconf,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** default.sysconf 25 May 2003 02:15:59 -0000 1.4
--- default.sysconf 25 May 2003 03:01:20 -0000 1.5
***************
*** 9,38 ****
; all since it relies on it to configure the interface.
;
- ; This only gets called on a new lease. We should _never_ get a
- ; different IP on any of the other hooks.
! (define configure-interface
! (lambda ()
! (if (defined? 'dhcp-requested-ip-address)
! (let
; if the mtu wasn't passed by the server, get the user configured one
! ((mtu
! (if (defined? 'dhcp-interface-mtu)
! dhcp-interface-mtu
! (client-get-default-mtu client-control)))
; if the subnet mask wasn't specified, get the user configured one
! (subnet-mask
! (if (defined? 'dhcp-subnet-mask)
! dhcp-subnet-mask
! (client-get-default-subnet-mask client-control))))
; that's it we're ready to bring up the interface
! (client-info-message "bringing up interface...")
! (if (not (client-interface-up client-control dhcp-requested-ip-address subnet-mask mtu))
! (client-fatal-message "could not bring up interface... exiting."))))))
; XXX
--- 9,51 ----
; all since it relies on it to configure the interface.
;
+ (define configure-interface #f)
+ (define reconfigure-interface #f)
! (let* ((configured-ip-address #f))
!
! (set! configure-interface
! (lambda ()
! (if (defined? 'dhcp-requested-ip-address)
! (let
; if the mtu wasn't passed by the server, get the user configured one
! ((mtu
! (if (defined? 'dhcp-interface-mtu)
! dhcp-interface-mtu
! (client-get-default-mtu client-control)))
; if the subnet mask wasn't specified, get the user configured one
! (subnet-mask
! (if (defined? 'dhcp-subnet-mask)
! dhcp-subnet-mask
! (client-get-default-subnet-mask client-control))))
; that's it we're ready to bring up the interface
! (client-info-message "bringing up interface...")
! (if (not (client-interface-up client-control dhcp-requested-ip-address subnet-mask mtu))
! (client-fatal-message "could not bring up interface... exiting.")
! (set! configured-ip-address dhcp-requested-ip-address))))))
!
! (set! reconfigure-interface
! (lambda ()
!
! (if configured-ip-address
! (if (not (string=? configured-ip-address dhcp-requested-ip-address))
! (begin
! (client-info-message "ip address changed during reconfiguration:")
! (client-info-message (string-append "using new address: " dhcp-requested-ip-address))
! (configure-interface)))))))
; XXX
***************
*** 149,154 ****
(begin
(real-unconfigure-default-route)
! (real-configure-default-route))
! (real-configure-default-route)))))
(set! unconfigure-default-route
--- 162,166 ----
(begin
(real-unconfigure-default-route)
! (real-configure-default-route))))))
(set! unconfigure-default-route
***************
*** 178,181 ****
--- 190,194 ----
(add-hook! dhcp-renew-hook reconfigure-dns)
(add-hook! dhcp-renew-hook reconfigure-default-route)
+ (add-hook! dhcp-renew-hook reconfigure-interface)
; unconfigure options on dhcp-release-hook
***************
*** 183,184 ****
--- 196,198 ----
(add-hook! dhcp-release-hook unconfigure-dns)
(add-hook! dhcp-release-hook unconfigure-default-route)
+ (add-hook! dhcp-release-hook reconfigure-interface)
\ No newline at end of file
|