16ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris/* include/uapi/linux/if_pppolac.h
26ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris *
36ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris * Header for PPP on L2TP Access Concentrator / PPPoLAC Socket (RFC 2661)
46ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris *
56ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris * Copyright (C) 2009 Google, Inc.
66ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris * Author: Chia-chi Yeh <chiachi@android.com>
76ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris *
86ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris * This software is licensed under the terms of the GNU General Public
96ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris * License version 2, as published by the Free Software Foundation, and
106ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris * may be copied, distributed, and modified under those terms.
116ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris *
126ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris * This program is distributed in the hope that it will be useful,
136ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris * but WITHOUT ANY WARRANTY; without even the implied warranty of
146ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
156ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris * GNU General Public License for more details.
166ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris */
176ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris
186ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris#ifndef _UAPI_LINUX_IF_PPPOLAC_H
196ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris#define _UAPI_LINUX_IF_PPPOLAC_H
206ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris
216ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris#include <linux/socket.h>
226ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris#include <linux/types.h>
236ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris
246ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferrisstruct sockaddr_pppolac {
256ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris	sa_family_t	sa_family;	/* AF_PPPOX */
266ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris	unsigned int	sa_protocol;	/* PX_PROTO_OLAC */
276ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris	int		udp_socket;
286ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris	struct __attribute__((packed)) {
296ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris		__u16	tunnel, session;
306ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris	} local, remote;
316ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris} __attribute__((packed));
326ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris
336ea19f626488db5efcc757f2d8a2fd362d0567ceChristopher Ferris#endif /* _UAPI_LINUX_IF_PPPOLAC_H */
34