File: Changes

package info (click to toggle)
dhcpcd 0.70-3
  • links: PTS
  • area: main
  • in suites: hamm
  • size: 276 kB
  • ctags: 270
  • sloc: ansic: 2,300; sh: 391; makefile: 93
file content (165 lines) | stat: -rw-r--r-- 8,594 bytes parent folder | download | duplicates (3)
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
07/23/96    1. moved ARP check from just after dhcpcd received a
  0.2a         DHCPOFFER message to just after dhcpcd received a
               DHCPACK message.
            2. added 'Parameter Request List' in the DHCPDISCOVER message.
            3. added code to output the content of DHCP message option from
               the server
07/27/96    added '-i' option specifying the class identifier because
  0.2a      RFC1541 says "The client implementation of DHCP should
            provide a mechanism for the user to select directly the
            'class-identifier' value.".

08/09/96   added the code to make a copy of the DHCP options in the
  0.2      DHCPOFFER message because Windows NT server does not put
           DHCP options in the DHCPACK message except for netmask, T1
           time, and T2time. Other DHCP options are only in the
           DHCPOFFER message.

09/09/96   added support to the "router" option.
  0.25a     changed files: options.c, dhcp-options.h, dhcp.h, hostinfo.c,
                           if.c, client.c

09/11/96   1. fixed a bug in setDefRoute (if.c). rt_flags was RT_UP.
  0.3a        It should be RT_GATEWAY.
           2. fixed typos in openRecvSocket (socket-if.c)
           3. changed the way to invoke a command file from using
              signal to forking twice
           4. removed unnecessary socket close/re-open

09/12/96   added the following sample shell scripts:
  0.3b       1. "network" for pcmcia-cs
             2. "rc" scripts (rc.inet1, rc.inet2, rc.M)
             3. "rc.dhcp", a command file which can be executed from dhcpcd
09/13/96   1. enhanced NTP support. Now dhcpcd creates the file, ntp.conf
  0.3         in the directory, /etc/dhcpc.
           2. added the code verifying if router addresses are correct
09/16/96   fixed a typo in selecting (client.c)
  0.31
09/17/96   added the code checking option field to parseDhcpMsg (options.c)
  0.32
09/19/96   quick fix to make it work with ISC's dhcpd. I made BROACAST
  0.33     flag available and added the NEED_BCAST_RESPONSE macro.
           ISC's DHCP server is the Internet Draft compliant, but
           dhcpcd is RFC1541 compliant. So this is a "workaround" version.

09/22/96   made dhcpcd compliant to the Internet Draft in order to
  0.4      work with ISC version of DHCP server.
           Changed client.c, options.c, socket-if.c

01/13/97   1. added IFF_MULTICAST in initHost (client.c) (Note 1).
  0.5a     2. fixed the bug that dhcpcd core-dumped when it received a
              datagram containig the DHCP message option (parseDhcpMsg
              in options.c) (Note 2).
           3. added -r option which makes dhcpcd RFC1541 compliant
              (Note 3).
           4. changed mkDhcpRequestMsg (client.c) to put the
              parameter request list option into the DHCPREQUEST
              message in order to support the CMU version of DHCP
              server (Note 4). But I do not check whether it works
              with the CMU version of DHCP server.
           5. changed the argument to logOpen from LOG_CONS to LOG_PID
              (Note 5).
           6. add nextState initialization in rebinding (client.c).
           7. changed the host information file name from "hostinfo"
              to "hostinfo-ifname" (saveHostInfo in hostinfo.c)
              (Note 5). Ifname is actually replaced with the network
              interface name like "eth0". This is good when multiple
              dhcpcd's attach to different network interfaces.

01/20/97   changed init, renewing, rebinding (client.c), and
  0.5a2    rcvAndCheckDhcpMsg (socket-if.c) to fix the bug that dhcpcd
           exited with holding the assigned IP address when it failed in
           invoking sendto system call in the RENEWING state. This happened
           when the server is down in the RENEWING state. It causes
           hosts to use expired IP addresses (how dangerous!). Now
           dhcpcd does not exit even when it gets an error from sendto
           in the RENEWING state. It continues to use the assigned IP
           address until the lease time is expired, then it
           initializes the network interface and goes into the INIT
           state (Note 6).

01/30/97   made version 0.5a2 into 0.5, and released it.
  0.5

03/07/97   1. fixed the bug that the renewal time and the rebind time
              are messed up (becomes minus number :p) when dhcpcd gets
              the lease time whose least significant byte is greater
              than or equal to 0x80 (setDhcpInfo in client.c) (Note 7).
              For example, if the lease time is 24 hours, dhcpcd does
              not work.
           2. added the hostname option to the parameter request list
              (mkDhcpDiscoverMsg and mkDhcpRequestMsg in client.c)
           3. fixed the bug that dhcpcd sends a DHCPREQUEST message
              which does not have the server identifier option in the
              SELECTING state (mkDhcpRequestMsg in client.c)
           4. fixed the bug that dhcpcd uses the information from the
              DHCPOFFER message for configuring the host (it must use
              the information from the DHCPREQUEST message) (initHost
              in client.c) (Note 8).

03/16/97   1. fixed the bug that DHCPDECLINE message was RFC1541
  0.6         compliant. Now dhcpcd can send both Interned Draft
              compliant DHCPDECLINE message and RFC1541 compliant
              one (mkDhcpDeclineMsg).
           2. fixed the bug that the broadcast address and the
              subnetmask were set to the wrong value under the
              following condition:
                1. dhcpcd is in the REBOOTING state
                2. received DHCP ACK msg does not include the
                   broadcast or subnetmask option.
              (rebooting in client.c)
           3. fixed the bug that dhcpcd does not send a DHCPDECLINE
              msg when it detects the duplicate IP adddress
              (arpCheck in arp.c)..
           4. changed the way to make a DHCPREQUEST msg in the
              SELECTING state (selecting, mkDhcpRequestMsg)
           5. changed the pcmcia/network script to unmount the NFS
              filesystems before invoking "dhcpcd -k" command when
              the card service goes down.
           6. added a new environment variable DHCP_DEVICE, which
              contains the name of network interface to which
              dhcpcd is attached.
04/24/97   changed the source UDP port from a random number to 68
  0.65     because some servers respond to NOT port 68 but the source
           UDP port in the received datagram (Note 9).

08/28/97    1. added '-I' (client identifier) option.
  0.70      2. added '-h' (hostname) option (Note 10).

02/04/98   Decreased ARP timeout to 2 seconds (fast enough for any Ethernet).
0.70-karn  Route only the global broadcast address (255.255.255.255) to
         the interface being configured, rather than all addresses.
         Fixed retransmit backoff code to correctly scale output of rand().
         Allow infinite retransmissions in the init state;
         i.e., if the DHCP server is down, DHCPCD will wait forever
         for it to come back up.
         Close DHCP UDP sockets in child process invoked with -c option to
         prevent bind failures if dhcpcd is restarted while the child
         is still running.
         Unlink pid file when exiting after getting an infinite lease.
         Set and export LEASETIME, RENEWALTIME, REBINDTIME, IPADDR, NETMASK
         and BROADCAST as environment variables to the command invoked
         with the -c option. (Note 11)


Note  1: Koji Okamura suggested this.
Note  2: This fix was made by Dan Halbert.
Note  3: Dan Halbert found that dhcpcd-0.4 does not work with some
         RFC1541 compliant DHCP servers, and made a patch for it.
         Brandon Mitchell suggested -r option.
Note  4: N. Komazaki found that CMU's DHCP server (dhcpd-3.3.7
          +patch) requires the parameter request option in the
         DHCPREQUEST message.
Note  5: Ulrich Windl suggested this.
Note  6: Koji Okamura found this bug.
Note  7: Andrew Kieschnick found this bug.
Note  8: Tim Riker found this bug.
Note  9: I found this problem by using the tcpdump log which
         Larry Hawkins sent me.
Note 10: I found some DHCP servers require this option by using the
         tcpdump log which David Filiatrault sent me.
Note 11: From Phil Karn (karn@qualcomm.com), motivated by frequent
       outages in the Time Warner Road Runner cable modem system.