projects
/
framework
/
connectivity
/
connman.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
7da565d
)
gdhcp: Send DHCPNAK when receiving a REQUEST before a DISCOVER
author
Samuel Ortiz
<sameo@linux.intel.com>
Fri, 12 Nov 2010 19:09:45 +0000
(20:09 +0100)
committer
Samuel Ortiz
<sameo@linux.intel.com>
Sat, 13 Nov 2010 22:35:38 +0000
(23:35 +0100)
gdhcp/server.c
patch
|
blob
|
history
diff --git
a/gdhcp/server.c
b/gdhcp/server.c
index
7322e6e
..
e6f6d91
100644
(file)
--- a/
gdhcp/server.c
+++ b/
gdhcp/server.c
@@
-685,7
+685,8
@@
static gboolean listener_event(GIOChannel *channel, GIOCondition condition,
send_offer(dhcp_server, &packet, lease, requested_nip);
break;
case DHCPREQUEST:
send_offer(dhcp_server, &packet, lease, requested_nip);
break;
case DHCPREQUEST:
- debug(dhcp_server, "Received REQUEST");
+ debug(dhcp_server, "Received REQUEST NIP %d",
+ requested_nip);
if (requested_nip == 0) {
requested_nip = packet.ciaddr;
if (requested_nip == 0)
if (requested_nip == 0) {
requested_nip = packet.ciaddr;
if (requested_nip == 0)
@@
-693,13
+694,16
@@
static gboolean listener_event(GIOChannel *channel, GIOCondition condition,
}
if (lease && requested_nip == lease->lease_nip) {
}
if (lease && requested_nip == lease->lease_nip) {
+ debug(dhcp_server, "Sending ACK");
send_ACK(dhcp_server, &packet,
lease->lease_nip);
break;
}
send_ACK(dhcp_server, &packet,
lease->lease_nip);
break;
}
- if (server_id_option)
+ if (server_id_option || lease == NULL) {
+ debug(dhcp_server, "Sending NAK");
send_NAK(dhcp_server, &packet);
send_NAK(dhcp_server, &packet);
+ }
break;
case DHCPDECLINE:
break;
case DHCPDECLINE: