Revision 3b46e624 slirp/ip_output.c
b/slirp/ip_output.c | ||
---|---|---|
143 | 143 |
m->m_data += if_maxlinkhdr; |
144 | 144 |
mhip = mtod(m, struct ip *); |
145 | 145 |
*mhip = *ip; |
146 |
|
|
146 |
|
|
147 | 147 |
/* No options */ |
148 | 148 |
/* if (hlen > sizeof (struct ip)) { |
149 | 149 |
* mhlen = ip_optcopy(ip, mhip) + sizeof (struct ip); |
... | ... | |
159 | 159 |
else |
160 | 160 |
mhip->ip_off |= IP_MF; |
161 | 161 |
mhip->ip_len = htons((u_int16_t)(len + mhlen)); |
162 |
|
|
162 |
|
|
163 | 163 |
if (m_copy(m, m0, off, len) < 0) { |
164 | 164 |
error = -1; |
165 | 165 |
goto sendorfree; |
166 | 166 |
} |
167 |
|
|
167 |
|
|
168 | 168 |
mhip->ip_off = htons((u_int16_t)mhip->ip_off); |
169 | 169 |
mhip->ip_sum = 0; |
170 | 170 |
mhip->ip_sum = cksum(m, mhlen); |
Also available in: Unified diff