Subversion Repositories HelenOS

Rev

Rev 4307 | Rev 4332 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4307 Rev 4327
Line 38... Line 38...
38
#include <async.h>
38
#include <async.h>
39
#include <malloc.h>
39
#include <malloc.h>
40
#include <mem.h>
40
#include <mem.h>
41
#include <rwlock.h>
41
#include <rwlock.h>
42
#include <stdio.h>
42
#include <stdio.h>
-
 
43
#include <string.h>
43
#include <task.h>
44
#include <task.h>
44
 
45
 
45
#include <ipc/ipc.h>
46
#include <ipc/ipc.h>
46
#include <ipc/services.h>
47
#include <ipc/services.h>
47
 
48
 
Line 432... Line 433...
432
    }
433
    }
433
    // is my protocol address?
434
    // is my protocol address?
434
    if( proto->addr->length != CONVERT_SIZE( uint8_t, char, header->hardware_length )){
435
    if( proto->addr->length != CONVERT_SIZE( uint8_t, char, header->hardware_length )){
435
        return EINVAL;
436
        return EINVAL;
436
    }
437
    }
437
    if( ! strncmp( proto->addr->value, ( char * ) des_proto, proto->addr->length )){
438
    if( ! str_lcmp( proto->addr->value, ( char * ) des_proto, proto->addr->length )){
438
        // not already upadted?
439
        // not already upadted?
439
        if( ! hw_source ){
440
        if( ! hw_source ){
440
            hw_source = measured_string_create_bulk(( char * ) src_hw, CONVERT_SIZE( uint8_t, char, header->hardware_length ));
441
            hw_source = measured_string_create_bulk(( char * ) src_hw, CONVERT_SIZE( uint8_t, char, header->hardware_length ));
441
            if( ! hw_source ) return ENOMEM;
442
            if( ! hw_source ) return ENOMEM;
442
            ERROR_PROPAGATE( arp_addr_add( & proto->addresses, ( char * ) src_proto, CONVERT_SIZE( uint8_t, char, header->protocol_length ), hw_source ));
443
            ERROR_PROPAGATE( arp_addr_add( & proto->addresses, ( char * ) src_proto, CONVERT_SIZE( uint8_t, char, header->protocol_length ), hw_source ));