OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-3.0/] [packages/] [net/] [bsd_tcpip/] [current/] [include/] [netinet6/] [in6_pcb.h] - Blame information for rev 786

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 786 skrzyp
//==========================================================================
2
//
3
//      include/netinet6/in6_pcb.h
4
//
5
//==========================================================================
6
// ####BSDCOPYRIGHTBEGIN####                                    
7
// -------------------------------------------                  
8
// This file is part of eCos, the Embedded Configurable Operating System.
9
//
10
// Portions of this software may have been derived from FreeBSD 
11
// or other sources, and if so are covered by the appropriate copyright
12
// and license included herein.                                 
13
//
14
// Portions created by the Free Software Foundation are         
15
// Copyright (C) 2002 Free Software Foundation, Inc.            
16
// -------------------------------------------                  
17
// ####BSDCOPYRIGHTEND####                                      
18
//==========================================================================
19
 
20
/*      $FreeBSD: src/sys/netinet6/in6_pcb.h,v 1.2.2.3 2001/08/13 16:26:17 ume Exp $    */
21
/*      $KAME: in6_pcb.h,v 1.17 2001/11/12 11:11:22 jinmei Exp $        */
22
 
23
/*
24
 * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
25
 * All rights reserved.
26
 *
27
 * Redistribution and use in source and binary forms, with or without
28
 * modification, are permitted provided that the following conditions
29
 * are met:
30
 * 1. Redistributions of source code must retain the above copyright
31
 *    notice, this list of conditions and the following disclaimer.
32
 * 2. Redistributions in binary form must reproduce the above copyright
33
 *    notice, this list of conditions and the following disclaimer in the
34
 *    documentation and/or other materials provided with the distribution.
35
 * 3. Neither the name of the project nor the names of its contributors
36
 *    may be used to endorse or promote products derived from this software
37
 *    without specific prior written permission.
38
 *
39
 * THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
40
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
41
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
42
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE
43
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
44
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
45
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
46
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
47
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
48
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
49
 * SUCH DAMAGE.
50
 *
51
 */
52
 
53
/*
54
 * Copyright (c) 1982, 1986, 1990, 1993
55
 *      The Regents of the University of California.  All rights reserved.
56
 *
57
 * Redistribution and use in source and binary forms, with or without
58
 * modification, are permitted provided that the following conditions
59
 * are met:
60
 * 1. Redistributions of source code must retain the above copyright
61
 *    notice, this list of conditions and the following disclaimer.
62
 * 2. Redistributions in binary form must reproduce the above copyright
63
 *    notice, this list of conditions and the following disclaimer in the
64
 *    documentation and/or other materials provided with the distribution.
65
 * 3. All advertising materials mentioning features or use of this software
66
 *    must display the following acknowledgement:
67
 *      This product includes software developed by the University of
68
 *      California, Berkeley and its contributors.
69
 * 4. Neither the name of the University nor the names of its contributors
70
 *    may be used to endorse or promote products derived from this software
71
 *    without specific prior written permission.
72
 *
73
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
74
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
75
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
76
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
77
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
78
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
79
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
80
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
81
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
82
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
83
 * SUCH DAMAGE.
84
 *
85
 *      @(#)in_pcb.h    8.1 (Berkeley) 6/10/93
86
 */
87
 
88
#ifndef _NETINET6_IN6_PCB_H_
89
#define _NETINET6_IN6_PCB_H_
90
 
91
#ifdef _KERNEL
92
#define satosin6(sa)    ((struct sockaddr_in6 *)(sa))
93
#define sin6tosa(sin6)  ((struct sockaddr *)(sin6))
94
#define ifatoia6(ifa)   ((struct in6_ifaddr *)(ifa))
95
 
96
void    in6_pcbpurgeif0 __P((struct in6pcb *, struct ifnet *));
97
void    in6_losing __P((struct inpcb *));
98
int     in6_pcballoc __P((struct socket *, struct inpcbinfo *, struct proc *));
99
int     in6_pcbbind __P((struct inpcb *, struct sockaddr *, struct proc *));
100
int     in6_pcbconnect __P((struct inpcb *, struct sockaddr *, struct proc *));
101
void    in6_pcbdetach __P((struct inpcb *));
102
void    in6_pcbdisconnect __P((struct inpcb *));
103
int     in6_pcbladdr __P((struct inpcb *, struct sockaddr *,
104
                          struct in6_addr **));
105
struct  inpcb *
106
        in6_pcblookup_local __P((struct inpcbinfo *,
107
                                 struct in6_addr *, u_int, int));
108
struct  inpcb *
109
        in6_pcblookup_hash __P((struct inpcbinfo *,
110
                                struct in6_addr *, u_int, struct in6_addr *,
111
                                u_int, int, struct ifnet *));
112
void    in6_pcbnotify __P((struct inpcbhead *, struct sockaddr *,
113
                           u_int, struct sockaddr *, u_int, int, void *,
114
                           void (*)(struct inpcb *, int)));
115
void    in6_rtchange __P((struct inpcb *, int));
116
int     in6_setpeeraddr __P((struct socket *so, struct sockaddr **nam));
117
int     in6_setsockaddr __P((struct socket *so, struct sockaddr **nam));
118
int     in6_mapped_sockaddr __P((struct socket *so, struct sockaddr **nam));
119
int     in6_mapped_peeraddr __P((struct socket *so, struct sockaddr **nam));
120
struct  in6_addr *in6_selectsrc __P((struct sockaddr_in6 *,
121
                                     struct ip6_pktopts *,
122
                                     struct ip6_moptions *,
123
                                     struct route *,
124
                                     struct ifnet **,
125
                                     struct in6_addr *,
126
                                     int *));
127
int in6_selectroute __P((struct sockaddr_in6 *, struct ip6_pktopts *,
128
                         struct ip6_moptions *, struct route *,
129
                         struct ifnet **, struct rtentry **, int));
130
int     in6_selecthlim __P((struct in6pcb *, struct ifnet *));
131
int     in6_pcbsetport __P((struct in6_addr *, struct inpcb *, struct proc *));
132
void    init_sin6 __P((struct sockaddr_in6 *sin6, struct mbuf *m));
133
#endif /* _KERNEL */
134
 
135
#endif /* !_NETINET6_IN6_PCB_H_ */

powered by: WebSVN 2.1.0

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