1 |
/* |
/* |
2 |
* Cisco C7200 (Predator) simulation platform. |
* Cisco router simulation platform. |
3 |
* Copyright (c) 2005,2006 Christophe Fillot. All rights reserved. |
* Copyright (c) 2005,2006 Christophe Fillot. All rights reserved. |
4 |
* |
* |
5 |
* Utility functions. |
* Utility functions. |
441 |
|
|
442 |
return(~sum); |
return(~sum); |
443 |
} |
} |
444 |
|
|
445 |
|
/* Byte-swap a memory block */ |
446 |
|
void mem_bswap32(void *ptr,size_t len) |
447 |
|
{ |
448 |
|
m_uint32_t *p = ptr; |
449 |
|
size_t count = len >> 2; |
450 |
|
int i; |
451 |
|
|
452 |
|
for(i=0;i<count;i++,p++) |
453 |
|
*p = swap32(*p); |
454 |
|
} |
455 |
|
|
456 |
|
/* Reverse a byte */ |
457 |
|
m_uint8_t m_reverse_u8(m_uint8_t val) |
458 |
|
{ |
459 |
|
m_uint8_t res = 0; |
460 |
|
int i; |
461 |
|
|
462 |
|
for(i=0;i<8;i++) |
463 |
|
if (val & (1 << i)) |
464 |
|
res |= 1 << (7 - i); |
465 |
|
|
466 |
|
return(res); |
467 |
|
} |