亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mtu.h

?? OpenVPN is a robust and highly flexible tunneling application that uses all of the encryption, authe
?? H
字號:
/* *  OpenVPN -- An application to securely tunnel IP networks *             over a single TCP/UDP port, with support for SSL/TLS-based *             session authentication and key exchange, *             packet encryption, packet authentication, and *             packet compression. * *  Copyright (C) 2002-2004 James Yonan <jim@yonan.net> * *  This program is free software; you can redistribute it and/or modify *  it under the terms of the GNU General Public License as published by *  the Free Software Foundation; either version 2 of the License, or *  (at your option) any later version. * *  This program is distributed in the hope that it will be useful, *  but WITHOUT ANY WARRANTY; without even the implied warranty of *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the *  GNU General Public License for more details. * *  You should have received a copy of the GNU General Public License *  along with this program (see the file COPYING included with this *  distribution); if not, write to the Free Software Foundation, Inc., *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */#ifndef MTU_H#define MTU_H#include "buffer.h"/* *  * Packet maninipulation routes such as encrypt, decrypt, compress, decompress * are passed a frame buffer that looks like this: * *    [extra_frame bytes] [mtu bytes] [extra_frame_bytes] [compression overflow bytes] *                         ^ *                   Pointer passed to function points here so that routine *                   can make use of extra_frame bytes before pointer *                   to prepend headers, etc. * *    extra_frame bytes is large enough for all encryption related overhead. * *    mtu bytes will be the MTU size set in the ifconfig statement that configures *      the TUN or TAP device such as: * *      ifconfig $1 10.1.0.2 pointopoint 10.1.0.1 mtu 1450 * *    Compression overflow bytes is the worst-case size expansion that would be *    expected if we tried to compress mtu + extra_frame bytes of uncompressible data. *//* * Standard ethernet MTU */#define ETHERNET_MTU       1500/* * It is a fatal error if mtu is less than * this value for tun device. */#define TUN_MTU_MIN        100/* * Default MTU of network over which tunnel data will pass by TCP/UDP. */#define LINK_MTU_DEFAULT   1500/* * Default MTU of tunnel device. */#define TUN_MTU_DEFAULT    1500/* * MTU Defaults for TAP devices */#define TAP_MTU_EXTRA_DEFAULT  32/* * Default MSSFIX value, used for reducing TCP MTU size */#define MSSFIX_DEFAULT     1450struct frame {  /*   * Maximum datagram size to be sent over the tunnel TCP/UDP channel.   */  int link_mtu;  int link_mtu_dynamic;  /*   * extra_frame: How many extra bytes might each subsystem (crypto, TLS, or, compression)   * add to frame in worst case?   *   * mtu + extra_frame = MTU of TCP/UDP transport   */  int extra_frame;  /*   * extra_buffer: Worst case size added to internal buffer due to functions   * such as compression which can potentially expand the size of uncompressible   * data.   */  int extra_buffer;  /*   * extra_tun: max number of bytes in excess of tun mtu size that we might read   * or write from TUN/TAP device.   */  int extra_tun;  /*   * extra_link: max number of bytes in excess on link mtu size that we might read   * or write from UDP/TCP link.   */  int extra_link;};/* Routines which read struct frame should use the macros below *//* * Overhead added to packet payload due to encapsulation */#define EXTRA_FRAME(f)           ((f)->extra_frame)/* * Delta between tun payload size and final TCP/UDP datagram size * (not including extra_link additions) */#define TUN_LINK_DELTA(f)        ((f)->extra_frame + (f)->extra_tun)/* * This is the size to "ifconfig" the tun or tap device. */#define TUN_MTU_SIZE(f)          ((f)->link_mtu - TUN_LINK_DELTA(f))#define TUN_MTU_SIZE_DYNAMIC(f)  ((f)->link_mtu_dynamic - TUN_LINK_DELTA(f))/* * This is the maximum packet size that we need to be able to * read from or write to a tun or tap device.  For example, * a tap device ifconfiged to an MTU of 1200 might actually want * to return a packet size of 1214 on a read(). */#define PAYLOAD_SIZE(f)          ((f)->link_mtu - (f)->extra_frame)#define PAYLOAD_SIZE_DYNAMIC(f)  ((f)->link_mtu_dynamic - (f)->extra_frame)/* * Max size of a payload packet after encryption, compression, etc. * overhead is added. */#define EXPANDED_SIZE(f)         ((f)->link_mtu)#define EXPANDED_SIZE_DYNAMIC(f) ((f)->link_mtu_dynamic)#define EXPANDED_SIZE_MIN(f)     (TUN_MTU_MIN + TUN_LINK_DELTA(f))/* * These values are used as maximum size constraints * on read() or write() from TUN/TAP device or TCP/UDP port. */#define MAX_RW_SIZE_TUN(f)       (PAYLOAD_SIZE(f))#define MAX_RW_SIZE_LINK(f)      (EXPANDED_SIZE(f) + (f)->extra_link)/* * In general, OpenVPN packet building routines set the initial * buffer store point this many bytes into the data buffer to * allow for efficient prepending. */#define FRAME_HEADROOM(f)        (TUN_LINK_DELTA(f) + (f)->extra_buffer + (f)->extra_link)/* * Max size of a buffer used to build a packet for output to * the TCP/UDP port. */#define BUF_SIZE(f)              (TUN_MTU_SIZE(f) + FRAME_HEADROOM(f) * 2)/* * Function prototypes. */void frame_finalize (struct frame *frame,		     bool link_mtu_defined,		     int link_mtu,		     bool tun_mtu_defined,		     int tun_mtu);void frame_subtract_extra (struct frame *frame, const struct frame *src);void frame_print (const struct frame *frame,		  int level,		  const char *prefix);void set_mtu_discover_type (int sd, int mtu_type);int translate_mtu_discover_type_name (const char *name);/* * frame_set_mtu_dynamic and flags */#define SET_MTU_TUN         (1<<0) /* use tun/tap rather than link sizing */#define SET_MTU_UPPER_BOUND (1<<1) /* only decrease dynamic MTU */void frame_set_mtu_dynamic (struct frame *frame, int mtu, unsigned int flags);/* * allocate a buffer for socket or tun layer */void alloc_buf_sock_tun (struct buffer *buf, const struct frame *frame, bool tuntap_buffer);/* * EXTENDED_SOCKET_ERROR_CAPABILITY functions -- print extra error info * on socket errors, such as PMTU size.  As of 2003.05.11, only works * on Linux 2.4+. */#if EXTENDED_SOCKET_ERROR_CAPABILITYvoid set_sock_extended_error_passing (int sd);const char *format_extended_socket_error (int fd, int *mtu, struct gc_arena *gc);#endif/* * Inline functions */static inline voidframe_add_to_extra_frame (struct frame *frame, int increment){  frame->extra_frame += increment;}static inline voidframe_add_to_extra_tun (struct frame *frame, int increment){  frame->extra_tun += increment;}static inline voidframe_add_to_extra_link (struct frame *frame, int increment){  frame->extra_link += increment;}static inline voidframe_add_to_extra_buffer (struct frame *frame, int increment){  frame->extra_buffer += increment;}static inline boolframe_defined (const struct frame *frame){  return frame->link_mtu > 0;}#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧洲av一区二区嗯嗯嗯啊| 欧美揉bbbbb揉bbbbb| 91精品福利视频| 欧美电影免费观看高清完整版| 亚洲欧美综合另类在线卡通| 秋霞电影网一区二区| 99国产精品一区| 久久久久久**毛片大全| 亚洲综合久久久| 成人av午夜电影| 精品国产髙清在线看国产毛片| 一区二区欧美国产| 成人午夜精品一区二区三区| 欧美成人三级在线| 亚洲成年人影院| 色婷婷亚洲婷婷| 中文字幕一区二区三区蜜月| 国产精品一区二区你懂的| 欧美精品 国产精品| 亚洲一区二区三区在线看| 99久久伊人网影院| 中文字幕乱码亚洲精品一区| 国产在线播放一区三区四| 欧美酷刑日本凌虐凌虐| 亚洲伊人伊色伊影伊综合网| 在线精品视频一区二区| 亚洲综合精品自拍| 欧美午夜精品一区二区三区| 有码一区二区三区| 91国在线观看| 亚洲国产一区二区三区| 欧美在线|欧美| 亚洲国产视频a| 欧美性大战久久久久久久| 亚洲国产精品精华液网站| 欧美色视频在线| 亚洲第一搞黄网站| 91精品蜜臀在线一区尤物| 亚洲va国产天堂va久久en| 欧美日韩一区二区三区四区 | 欧美群妇大交群中文字幕| 一区二区三区在线免费播放 | 亚洲激情网站免费观看| 91麻豆国产在线观看| 一区二区三区在线播| 欧美美女一区二区在线观看| 免费成人在线播放| 国产亚洲视频系列| 成人免费视频播放| 亚洲妇熟xx妇色黄| 日韩欧美的一区| 国产成人综合亚洲网站| 国产精品传媒视频| 51精品视频一区二区三区| 理论电影国产精品| 久久理论电影网| 色av综合在线| 蜜臀va亚洲va欧美va天堂| 久久色中文字幕| 色偷偷一区二区三区| 日本免费新一区视频| 久久婷婷综合激情| 在线中文字幕一区二区| 极品瑜伽女神91| 国产精品剧情在线亚洲| 欧美日韩国产精品成人| 九九**精品视频免费播放| 亚洲四区在线观看| 91精品国产福利| 不卡区在线中文字幕| 午夜私人影院久久久久| 欧美激情在线一区二区| 欧美色中文字幕| 亚洲国产欧美日韩另类综合| 日韩午夜在线观看| 91最新地址在线播放| 久久国产综合精品| 亚洲小说欧美激情另类| 亚洲国产精品精华液2区45| 欧美日韩国产影片| eeuss鲁片一区二区三区在线看| 五月激情丁香一区二区三区| 国产精品国产精品国产专区不片 | 日本亚洲免费观看| 亚洲欧美日韩国产综合| 亚洲精品一区在线观看| 欧美精品 国产精品| 一本久久a久久精品亚洲| 国产伦精品一区二区三区视频青涩 | 成人福利视频网站| 狠狠色狠狠色综合| 午夜国产不卡在线观看视频| 中文字幕五月欧美| 国产校园另类小说区| 欧美精品日韩一本| 在线免费不卡视频| 91浏览器打开| 成人a区在线观看| 国产一区二区主播在线| 蜜臀久久久99精品久久久久久| 亚洲成人午夜电影| 一区二区三区不卡在线观看| 国产精品久久久久一区二区三区共| 精品国产第一区二区三区观看体验 | 日本不卡不码高清免费观看| 精品国精品国产| 欧美久久一二区| 日本韩国精品一区二区在线观看| 成人激情黄色小说| 丁香六月久久综合狠狠色| 国产呦精品一区二区三区网站| 日韩不卡一区二区三区| 天天av天天翘天天综合网色鬼国产 | 日韩精品中文字幕一区| 日韩一区二区三| 日韩精品影音先锋| 精品免费日韩av| 久久综合网色—综合色88| 精品国产亚洲在线| 久久久夜色精品亚洲| 中文字幕乱码久久午夜不卡 | 精品国产sm最大网站| 精品国内二区三区| 国产欧美精品国产国产专区| 国产欧美日韩激情| 亚洲视频小说图片| 一区二区三区产品免费精品久久75| 亚洲香肠在线观看| 天堂va蜜桃一区二区三区漫画版| 首页亚洲欧美制服丝腿| 久久精品久久精品| 国产成人免费高清| 91在线一区二区三区| 欧美人伦禁忌dvd放荡欲情| 欧美一区二区视频在线观看2020| 欧美一区在线视频| 国产亚洲va综合人人澡精品| 中文字幕在线一区免费| 亚洲福利视频三区| 国产伦精品一区二区三区视频青涩| 成人app网站| 7777女厕盗摄久久久| 26uuu亚洲综合色| 亚洲三级电影全部在线观看高清| 日韩在线卡一卡二| 国产激情视频一区二区在线观看 | 不卡av在线免费观看| 欧美日韩国产综合草草| 日韩欧美国产三级电影视频| 久久精品免费在线观看| 亚洲综合一区二区精品导航| 麻豆精品一区二区av白丝在线| 成人午夜免费av| 欧美久久久久久蜜桃| 日本一区二区三区dvd视频在线| 一区二区不卡在线播放| 精品在线免费观看| 色香蕉成人二区免费| 欧美tickling挠脚心丨vk| 一区二区三区四区视频精品免费| 蜜桃一区二区三区在线观看| 91丨porny丨蝌蚪视频| 欧美成人精品二区三区99精品| 亚洲人精品午夜| 国产一二精品视频| 欧美一级片免费看| 亚洲三级在线播放| 国产精品自在在线| 欧美精品一卡两卡| 自拍偷在线精品自拍偷无码专区| 久久精工是国产品牌吗| 在线观看视频一区二区欧美日韩| 国产欧美精品一区| 久久av资源网| 欧美猛男gaygay网站| 亚洲欧美一区二区三区孕妇| 国产精品一区二区视频| 欧美一级在线视频| 亚洲国产精品综合小说图片区| 不卡大黄网站免费看| 国产欧美日本一区视频| 精品在线亚洲视频| 日韩欧美在线一区二区三区| 亚洲亚洲人成综合网络| 一本大道综合伊人精品热热| 国产精品私房写真福利视频| 国产一区二区三区在线观看免费| 欧美肥妇bbw| 日本人妖一区二区| 欧美一区二区三区免费大片| 午夜精品一区在线观看| 在线观看亚洲成人| 亚洲韩国一区二区三区| 欧美日韩一区二区在线观看| 亚洲综合激情另类小说区| 欧美性xxxxx极品少妇| 亚洲乱码国产乱码精品精的特点| 99久久夜色精品国产网站| 日韩理论在线观看| 色综合久久天天|