Back to index

glibc  2.9
udp.h
Go to the documentation of this file.
00001 /* Copyright (C) 1991, 92, 93, 95, 96, 97, 2004 Free Software Foundation, Inc.
00002    This file is part of the GNU C Library.
00003 
00004    The GNU C Library is free software; you can redistribute it and/or
00005    modify it under the terms of the GNU Lesser General Public
00006    License as published by the Free Software Foundation; either
00007    version 2.1 of the License, or (at your option) any later version.
00008 
00009    The GNU C Library is distributed in the hope that it will be useful,
00010    but WITHOUT ANY WARRANTY; without even the implied warranty of
00011    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012    Lesser General Public License for more details.
00013 
00014    You should have received a copy of the GNU Lesser General Public
00015    License along with the GNU C Library; if not, write to the Free
00016    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
00017    02111-1307 USA.  */
00018 
00019 /*
00020  * Copyright (C) 1982, 1986 Regents of the University of California.
00021  * All rights reserved.
00022  *
00023  * Redistribution and use in source and binary forms, with or without
00024  * modification, are permitted provided that the following conditions
00025  * are met:
00026  * 1. Redistributions of source code must retain the above copyright
00027  *    notice, this list of conditions and the following disclaimer.
00028  * 2. Redistributions in binary form must reproduce the above copyright
00029  *    notice, this list of conditions and the following disclaimer in the
00030  *    documentation and/or other materials provided with the distribution.
00031  * 4. Neither the name of the University nor the names of its contributors
00032  *    may be used to endorse or promote products derived from this software
00033  *    without specific prior written permission.
00034  *
00035  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
00036  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
00037  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
00038  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
00039  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
00040  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
00041  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
00042  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
00043  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
00044  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
00045  * SUCH DAMAGE.
00046  */
00047 
00048 #ifndef __NETINET_UDP_H
00049 #define __NETINET_UDP_H    1
00050 
00051 #include <features.h>
00052 #include <sys/types.h>
00053 
00054 
00055 /* UDP header as specified by RFC 768, August 1980. */
00056 #ifdef __FAVOR_BSD
00057 
00058 struct udphdr
00059 {
00060   u_int16_t uh_sport;              /* source port */
00061   u_int16_t uh_dport;              /* destination port */
00062   u_int16_t uh_ulen;        /* udp length */
00063   u_int16_t uh_sum;         /* udp checksum */
00064 };
00065 
00066 #else
00067 
00068 struct udphdr
00069 {
00070   u_int16_t source;
00071   u_int16_t dest;
00072   u_int16_t len;
00073   u_int16_t check;
00074 };
00075 #endif
00076 
00077 #define SOL_UDP            17      /* sockopt level for UDP */
00078 
00079 #endif /* netinet/udp.h */