OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [trunk/] [rtos/] [rtems/] [c/] [src/] [libnetworking/] [net/] [ethernet.h] - Blame information for rev 261

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 30 unneback
/*
2
 * Fundamental constants relating to ethernet.
3
 *
4
 * $Id: ethernet.h,v 1.2 2001-09-27 12:01:54 chris Exp $
5
 *
6
 */
7
 
8
#ifndef _NET_ETHERNET_H_
9
#define _NET_ETHERNET_H_
10
 
11
/*
12
 * The number of bytes in an ethernet (MAC) address.
13
 */
14
#define ETHER_ADDR_LEN          6
15
 
16
/*
17
 * The number of bytes in the type field.
18
 */
19
#define ETHER_TYPE_LEN          2
20
 
21
/*
22
 * The number of bytes in the trailing CRC field.
23
 */
24
#define ETHER_CRC_LEN           4
25
 
26
/*
27
 * The length of the combined header.
28
 */
29
#define ETHER_HDR_LEN           (ETHER_ADDR_LEN*2+ETHER_TYPE_LEN)
30
 
31
/*
32
 * The minimum packet length.
33
 */
34
#define ETHER_MIN_LEN           64
35
 
36
/*
37
 * The maximum packet length.
38
 */
39
#define ETHER_MAX_LEN           1518
40
 
41
/*
42
 * A macro to validate a length with
43
 */
44
#define ETHER_IS_VALID_LEN(foo) \
45
        ((foo) >= ETHER_MIN_LEN && (foo) <= ETHER_MAX_LEN)
46
 
47
/*
48
 * Structure of a 10Mb/s Ethernet header.
49
 */
50
struct  ether_header {
51
        u_char  ether_dhost[ETHER_ADDR_LEN];
52
        u_char  ether_shost[ETHER_ADDR_LEN];
53
        u_short ether_type;
54
};
55
 
56
/*
57
 * Structure of a 48-bit Ethernet address.
58
 */
59
struct  ether_addr {
60
        u_char octet[ETHER_ADDR_LEN];
61
};
62
 
63
#endif

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.