diff options
| author | Roy Marples <roy@marples.name> | 2013-12-02 20:45:19 +0000 |
|---|---|---|
| committer | Roy Marples <roy@marples.name> | 2013-12-02 20:45:19 +0000 |
| commit | d9fbb118757914d2a31583644bd25b486a1e13bb (patch) | |
| tree | 1e164da04367847298560dd73c3700fa297257a8 /dhcpcd.c | |
| parent | 3d3b4b1a42c126d96ed8463b42313193b96629bf (diff) | |
| download | dhcpcd-d9fbb118757914d2a31583644bd25b486a1e13bb.tar.xz | |
Fix a crash freeing our embedded config
Diffstat (limited to 'dhcpcd.c')
| -rw-r--r-- | dhcpcd.c | 9 |
1 files changed, 5 insertions, 4 deletions
@@ -140,6 +140,7 @@ free_globals(void) { int i; size_t n; + struct dhcp_opt *opt; for (i = 0; i < ifac; i++) free(ifav[i]); @@ -149,13 +150,13 @@ free_globals(void) free(ifdv); #ifdef INET - for (n = 0; n < dhcp_opts_len; n++) - free_dhcp_opt_embenc(&dhcp_opts[n]); + for (n = 0, opt = dhcp_opts; n < dhcp_opts_len; n++, opt++) + free_dhcp_opt_embenc(opt); free(dhcp_opts); #endif #ifdef INET6 - for (n = 0; n < dhcp6_opts_len; n++) - free_dhcp_opt_embenc(&dhcp6_opts[n]); + for (n = 0, opt = dhcp6_opts; n < dhcp6_opts_len; n++, opt++) + free_dhcp_opt_embenc(opt); free(dhcp6_opts); #endif } |
