1/* 2 * Copyright (c) 2005 Reyk Floeter <reyk@openbsd.org> 3 * 4 * Permission to use, copy, modify, and distribute this software for any 5 * purpose with or without fee is hereby granted, provided that the above 6 * copyright notice and this permission notice appear in all copies. 7 * 8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 12 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 13 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15 */ 16 17#ifndef _PORT_TUN_H 18#define _PORT_TUN_H 19 20struct Channel; 21struct ssh; 22 23#if defined(SSH_TUN_LINUX) || defined(SSH_TUN_FREEBSD) 24# define CUSTOM_SYS_TUN_OPEN 25int sys_tun_open(int, int, char **); 26#endif 27 28#if defined(SSH_TUN_COMPAT_AF) || defined(SSH_TUN_PREPEND_AF) 29# define SSH_TUN_FILTER 30int sys_tun_infilter(struct ssh *, struct Channel *, char *, int); 31u_char *sys_tun_outfilter(struct ssh *, struct Channel *, u_char **, size_t *); 32#endif 33 34#if defined(SYS_RDOMAIN_LINUX) 35# define HAVE_SYS_GET_RDOMAIN 36# define HAVE_SYS_SET_RDOMAIN 37# define HAVE_SYS_VALID_RDOMAIN 38char *sys_get_rdomain(int fd); 39int sys_set_rdomain(int fd, const char *name); 40int sys_valid_rdomain(const char *name); 41#endif 42 43#if defined(SYS_RDOMAIN_XXX) 44# define HAVE_SYS_SET_PROCESS_RDOMAIN 45void sys_set_process_rdomain(const char *name); 46#endif 47 48#endif 49