Rev 10051 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 10051 | Rev 10058 | ||
---|---|---|---|
Line 215... | Line 215... | ||
215 | jmp .exit |
215 | jmp .exit |
Line 216... | Line 216... | ||
216 | 216 | ||
217 | .gotit: |
217 | .gotit: |
Line 218... | Line 218... | ||
218 | DEBUGF DEBUG_NETWORK_VERBOSE, "ARP_input: found matching entry\n" |
218 | DEBUGF DEBUG_NETWORK_VERBOSE, "ARP_input: found matching entry\n" |
219 | 219 | ||
Line 220... | Line 220... | ||
220 | cmp [esi + ARP_entry.TTL], ARP_STATIC_ENTRY ; if it is a static entry, dont touch it |
220 | cmp [esi + ARP_entry.TTL], ARP_STATIC_ENTRY ; if it is a static entry, don't touch it |
Line 221... | Line 221... | ||
221 | je .exit |
221 | je .exit |
Line 237... | Line 237... | ||
237 | 237 | ||
238 | .maybe_request: |
238 | .maybe_request: |
239 | cmp [edx + ARP_header.Opcode], ARP_REQ_OPCODE |
239 | cmp [edx + ARP_header.Opcode], ARP_REQ_OPCODE |
Line 240... | Line 240... | ||
240 | jne .exit |
240 | jne .exit |
Line 241... | Line 241... | ||
241 | 241 | ||
242 | DEBUGF DEBUG_NETWORK_VERBOSE, "ARP_input: its a request\n" |
242 | DEBUGF DEBUG_NETWORK_VERBOSE, "ARP_input: it is a request\n" |
243 | 243 | ||
Line 386... | Line 386... | ||
386 | mov eax, [esi + ARP_entry.IP] |
386 | mov eax, [esi + ARP_entry.IP] |
387 | .loop: |
387 | .loop: |
388 | cmp [edi + ARP_entry.Status], ARP_NO_ENTRY ; is this slot empty? |
388 | cmp [edi + ARP_entry.Status], ARP_NO_ENTRY ; is this slot empty? |
389 | je .add |
389 | je .add |
Line 390... | Line 390... | ||
390 | 390 | ||
391 | cmp [edi + ARP_entry.IP], eax ; if not, check if it doesnt collide |
391 | cmp [edi + ARP_entry.IP], eax ; if not, check it doesn't collide |
Line 392... | Line 392... | ||
392 | jne .maybe_next |
392 | jne .maybe_next |
393 | 393 | ||
Line 394... | Line 394... | ||
394 | cmp [edi + ARP_entry.TTL], ARP_STATIC_ENTRY ; ok, its the same IP, update it if not static |
394 | cmp [edi + ARP_entry.TTL], ARP_STATIC_ENTRY ; ok, it's the same IP, update it if not static |
395 | jne .add |
395 | jne .add |