--- zzzz-none-000/linux-2.6.28.10/include/linux/in.h 2009-05-02 18:54:43.000000000 +0000 +++ puma5-6360-529/linux-2.6.28.10/include/linux/in.h 2011-04-05 15:54:27.000000000 +0000 @@ -77,6 +77,22 @@ #define IP_PASSSEC 18 #define IP_TRANSPARENT 19 +#ifdef CONFIG_TI_IP_PKTINFO_SOCKOPT +/* + * TI Extension: + * socket option for ability to recieve the relevent for + * cable TI modem information through the IPv4 socket. + */ +#define TI_IP_PKTINFO 20 +#endif + +#ifdef CONFIG_TI_META_DATA +/* + * TI Extension to pass meta data through sockets. + */ +#define TI_IP_META_DATA 21 +#endif + /* BSD compatibility */ #define IP_RECVRETOPTS IP_RETOPTS @@ -177,6 +193,22 @@ struct in_addr ipi_addr; }; +#ifdef CONFIG_TI_IP_PKTINFO_SOCKOPT +/* + * TI Extension: + * data structure for passing the needed information + * about the incoming packet. Currently we only need a small element + */ +#ifndef TI_PKTINFO_STRUCT +#define TI_PKTINFO_STRUCT +struct ti_pktinfo +{ + int ifcpe_side; + char mac_addr[6]; +}; +#endif +#endif + /* Structure describing an Internet (IP) socket address. */ #define __SOCK_SIZE__ 16 /* sizeof(struct sockaddr) */ struct sockaddr_in {