⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 modusox.bas

📁 入侵检测是近几年发展起来的新型网络安全策略
💻 BAS
📖 第 1 页 / 共 4 页
字号:
Attribute VB_Name = "ModSocks"
'****************************************************************************
'人人为我,我为人人
'枕善居汉化收藏整理
'发布日期:2006/12/23
'描    述:非常专业的防火墙源代码
'网    站:http://www.Mndsoft.com/  (VB6源码博客)
'网    站:http://www.VbDnet.com/   (VB.NET源码博客,主要基于.NET2005)
'e-mail  :Mndsoft@163.com
'e-mail  :Mndsoft@126.com
'OICQ    :88382850
'          如果您有新的好的代码别忘记给枕善居哦!
'****************************************************************************
Option Explicit
'********************************************************************************
'MSocketSupport module
'Copyright 2002 by Oleg Gdalevich
'Visual Basic Internet Programming website (http://www.vbip.com)
'********************************************************************************
'This module contains API declarations and helper functions for the CSocket class
'********************************************************************************
'Version: 1.0.12     Modified: 17-OCT-2002
'********************************************************************************
'To get latest version of this code please visit the following web page:
'http://www.vbip.com/winsock-api/csocket-class/csocket-class-01.asp
'********************************************************************************
Public Const INADDR_NONE            As Long = &HFFFF
Public Const SOCKET_ERROR           As Long = -1
Public Const INVALID_SOCKET         As Long = -1
Public Const INADDR_ANY             As Long = &H0
Public Const FD_SETSIZE             As Long = 64
Public Const MAXGETHOSTSTRUCT       As Long = 1024
Public Const SD_RECEIVE             As Long = &H0
Public Const SD_SEND                As Long = &H1
Public Const SD_BOTH                As Long = &H2
Public Const MSG_OOB                As Long = &H1               '/* process out-of-band data */
Public Const MSG_PEEK               As Long = &H2               '/* peek at incoming message */
Public Const MSG_DONTROUTE          As Long = &H4               '/* send without using routing tables */
Public Const MSG_PARTIAL            As Long = &H8000            '/* partial send or recv for message xport */
Public Const FD_READ                As Long = &H1&
Public Const FD_WRITE               As Long = &H2&
Public Const FD_OOB                 As Long = &H4&
Public Const FD_ACCEPT              As Long = &H8&
Public Const FD_CONNECT             As Long = &H10&
Public Const FD_CLOSE               As Long = &H20&
Public Const SOL_SOCKET             As Long = 65535
Public Const SO_SNDBUF              As Long = &H1001            'Send buffer size
Public Const SO_RCVBUF              As Long = &H1002            'Receive buffer size
Public Const SO_SNDLOWAT            As Long = &H1003            'Send low-water mark
Public Const SO_RCVLOWAT            As Long = &H1004            'Receive low-water mark
Public Const SO_SNDTIMEO            As Long = &H1005            'Send timeout
Public Const SO_RCVTIMEO            As Long = &H1006            'Receive timeout
Public Const SO_ERROR               As Long = &H1007            'Get error status and clear
Public Const SO_TYPE                As Long = &H1008            'Get socket type
Public Const SO_DEBUG               As Long = &H1&              ' Turn on debugging info recording
Public Const SO_ACCEPTCONN          As Long = &H2&              ' Socket has had listen() - READ-ONLY.
Public Const SO_REUSEADDR           As Long = &H4&              ' Allow local address reuse.
Public Const SO_KEEPALIVE           As Long = &H8&              ' Keep connections alive.
Public Const SO_DONTROUTE           As Long = &H10&             ' Just use interface addresses.
Public Const SO_BROADCAST           As Long = &H20&             ' Permit sending of broadcast msgs.
Public Const SO_USELOOPBACK         As Long = &H40&             ' Bypass hardware when possible.
Public Const SO_LINGER              As Long = &H80&             ' Linger on close if data present.
Public Const SO_OOBINLINE           As Long = &H100&            ' Leave received OOB data in line.
Public Const SO_DONTLINGER          As Long = Not SO_LINGER
Public Const SO_EXCLUSIVEADDRUSE    As Long = Not SO_REUSEADDR  ' Disallow local address reuse.
Public Const WSADESCRIPTION_LEN     As Long = 257
Public Const WSASYS_STATUS_LEN      As Long = 129
Public Const SIO_GET_INTERFACE_LIST As Long = &H4004747F
Public Const TCP_NODELAY            As Long = &H1
Public Const TCP_BSDURGENT          As Long = &H7000
Public Type WSAData
    wVersion                        As Integer
    wHighVersion                    As Integer
    szDescription                   As String * WSADESCRIPTION_LEN
    szSystemStatus                  As String * WSASYS_STATUS_LEN
    iMaxSockets                     As Integer
    iMaxUdpDg                       As Integer
    lpVendorInfo                    As Long
End Type
Public Type sockaddr_in
    sin_family                      As Integer
    sin_port                        As Integer
    sin_addr                        As Long
    sin_zero(1 To 8)                As Byte
End Type
Public Type fd_set
  fd_count                          As Long '// how many are SET?
  fd_array(1 To FD_SETSIZE)         As Long '// an array of SOCKETs
End Type
Public Type IPHeader
    ip_verlen                       As Byte             'IP version number and header length in 32bit words (4 bits each)
    ip_tos                          As Byte             'Type Of Service ID (1 octet)
    ip_totallength                  As Integer          'Size of Datagram (header + data) in octets
    ip_id                           As Integer          'IP-ID (16 bits)
    ip_offset                       As Integer          'fragmentation flags (3bit) and fragmet offset (13 bits)
    ip_ttl                          As Byte             'datagram Time To Live (in network hops)
    ip_protocol                     As Byte             'Transport protocol type (byte)
    ip_checksum                     As Integer          'Header Checksum (16 bits)
    ip_srcaddr                      As Long             'Source IP Address (32 bits)
    ip_destaddr                     As Long             'Destination IP Address (32 bits)
End Type

Public Type sockaddr_gen
    AddressIn                       As sockaddr_in
    filler(0 To 7)                  As Byte
End Type
Public Type INTERFACE_INFO
    iiFlags                         As Long             'Interface flags
    iiAddress                       As sockaddr_gen     'Interface address
    iiBroadcastAddress              As sockaddr_gen     'Broadcast address
    iiNetmask                       As sockaddr_gen     'Network mask
End Type
Public Type INTERFACEINFO
    iInfo(0 To 7)                   As INTERFACE_INFO
End Type
Public Const WSABASEERR             As Long = 10000
Public Const WSAEINTR               As Long = (WSABASEERR + 4)
Public Const WSAEBADF               As Long = (WSABASEERR + 9)
Public Const WSAEACCES              As Long = (WSABASEERR + 13)
Public Const WSAEFAULT              As Long = (WSABASEERR + 14)
Public Const WSAEINVAL              As Long = (WSABASEERR + 22)
Public Const WSAEMFILE              As Long = (WSABASEERR + 24)
Public Const WSAEWOULDBLOCK         As Long = (WSABASEERR + 35)
Public Const WSAEINPROGRESS         As Long = (WSABASEERR + 36)
Public Const WSAEALREADY            As Long = (WSABASEERR + 37)
Public Const WSAENOTSOCK            As Long = (WSABASEERR + 38)
Public Const WSAEDESTADDRREQ        As Long = (WSABASEERR + 39)
Public Const WSAEMSGSIZE            As Long = (WSABASEERR + 40)
Public Const WSAEPROTOTYPE          As Long = (WSABASEERR + 41)
Public Const WSAENOPROTOOPT         As Long = (WSABASEERR + 42)
Public Const WSAEPROTONOSUPPORT     As Long = (WSABASEERR + 43)
Public Const WSAESOCKTNOSUPPORT     As Long = (WSABASEERR + 44)
Public Const WSAEOPNOTSUPP          As Long = (WSABASEERR + 45)
Public Const WSAEPFNOSUPPORT        As Long = (WSABASEERR + 46)
Public Const WSAEAFNOSUPPORT        As Long = (WSABASEERR + 47)
Public Const WSAEADDRINUSE          As Long = (WSABASEERR + 48)
Public Const WSAEADDRNOTAVAIL       As Long = (WSABASEERR + 49)
Public Const WSAENETDOWN            As Long = (WSABASEERR + 50)
Public Const WSAENETUNREACH         As Long = (WSABASEERR + 51)
Public Const WSAENETRESET           As Long = (WSABASEERR + 52)
Public Const WSAECONNABORTED        As Long = (WSABASEERR + 53)
Public Const WSAECONNRESET          As Long = (WSABASEERR + 54)
Public Const WSAENOBUFS             As Long = (WSABASEERR + 55)
Public Const WSAEISCONN             As Long = (WSABASEERR + 56)
Public Const WSAENOTCONN            As Long = (WSABASEERR + 57)
Public Const WSAESHUTDOWN           As Long = (WSABASEERR + 58)
Public Const WSAETOOMANYREFS        As Long = (WSABASEERR + 59)
Public Const WSAETIMEDOUT           As Long = (WSABASEERR + 60)
Public Const WSAECONNREFUSED        As Long = (WSABASEERR + 61)
Public Const WSAELOOP               As Long = (WSABASEERR + 62)
Public Const WSAENAMETOOLONG        As Long = (WSABASEERR + 63)
Public Const WSAEHOSTDOWN           As Long = (WSABASEERR + 64)
Public Const WSAEHOSTUNREACH        As Long = (WSABASEERR + 65)
Public Const WSAENOTEMPTY           As Long = (WSABASEERR + 66)
Public Const WSAEPROCLIM            As Long = (WSABASEERR + 67)
Public Const WSAEUSERS              As Long = (WSABASEERR + 68)
Public Const WSAEDQUOT              As Long = (WSABASEERR + 69)
Public Const WSAESTALE              As Long = (WSABASEERR + 70)
Public Const WSAEREMOTE             As Long = (WSABASEERR + 71)
Public Const WSASYSNOTREADY         As Long = (WSABASEERR + 91)
Public Const WSAVERNOTSUPPORTED     As Long = (WSABASEERR + 92)
Public Const WSANOTINITIALISED      As Long = (WSABASEERR + 93)
Public Const WSAEDISCON             As Long = (WSABASEERR + 101)
Public Const WSAENOMORE             As Long = (WSABASEERR + 102)
Public Const WSAECANCELLED          As Long = (WSABASEERR + 103)
Public Const WSAEINVALIDPROCTABLE   As Long = (WSABASEERR + 104)
Public Const WSAEINVALIDPROVIDER    As Long = (WSABASEERR + 105)
Public Const WSAEPROVIDERFAILEDINIT As Long = (WSABASEERR + 106)
Public Const WSASYSCALLFAILURE      As Long = (WSABASEERR + 107)
Public Const WSASERVICE_NOT_FOUND   As Long = (WSABASEERR + 108)
Public Const WSATYPE_NOT_FOUND      As Long = (WSABASEERR + 109)
Public Const WSA_E_NO_MORE          As Long = (WSABASEERR + 110)
Public Const WSA_E_CANCELLED        As Long = (WSABASEERR + 111)
Public Const WSAEREFUSED            As Long = (WSABASEERR + 112)
Public Const WSAHOST_NOT_FOUND      As Long = (WSABASEERR + 1001)
Public Const WSATRY_AGAIN           As Long = (WSABASEERR + 1002)
Public Const WSANO_RECOVERY         As Long = (WSABASEERR + 1003)
Public Const WSANO_DATA             As Long = (WSABASEERR + 1004)
Public Const SIO_RCVALL             As Long = &H98000001
Public Enum ServicePort
    IPPORT_ECHO = 7
    IPPORT_DISCARD = 9
    IPPORT_SYSTAT = 11
    IPPORT_DAYTIME = 13
    IPPORT_NETSTAT = 15
    IPPORT_FTP = 21
    IPPORT_TELNET = 23
    IPPORT_SMTP = 25
    IPPORT_TIMESERVER = 37
    IPPORT_NAMESERVER = 42
    IPPORT_WHOIS = 43
    IPPORT_MTP = 57
End Enum
Public Enum SocketType
    SOCK_STREAM = 1                 ' /* stream socket */
    SOCK_DGRAM = 2                  ' /* datagram socket */
    SOCK_RAW = 3                    ' /* raw-protocol interface */
    SOCK_RDM = 4                    ' /* reliably-delivered message */
    SOCK_SEQPACKET = 5              ' /* sequenced packet stream */
End Enum
Public Enum AddressFamily
    AF_UNSPEC = 0                   '/* unspecified */
    AF_UNIX = 1                     '/* local to host (pipes, portals) */
    AF_INET = 2                     '/* internetwork: UDP, TCP, etc. */
    AF_IMPLINK = 3                  '/* arpanet imp addresses */
    AF_PUP = 4                      '/* pup protocols: e.g. BSP */
    AF_CHAOS = 5                    '/* mit CHAOS protocols */
    AF_NS = 6                       '/* XEROX NS protocols */
    AF_IPX = AF_NS                  '/* IPX protocols: IPX, SPX, etc. */
    AF_ISO = 7                      '/* ISO protocols */
    AF_OSI = AF_ISO                 '/* OSI is ISO */
    AF_ECMA = 8                     '/* european computer manufacturers */
    AF_DATAKIT = 9                  '/* datakit protocols */
    AF_CCITT = 10                   '/* CCITT protocols, X.25 etc */
    AF_SNA = 11                     '/* IBM SNA */
    AF_DECnet = 12                  '/* DECnet */
    AF_DLI = 13                     '/* Direct data link interface */
    AF_LAT = 14                     '/* LAT */
    AF_HYLINK = 15                  '/* NSC Hyperchannel */
    AF_APPLETALK = 16               '/* AppleTalk */
    AF_NETBIOS = 17                 '/* NetBios-style addresses */
    AF_VOICEVIEW = 18               '/* VoiceView */
    AF_FIREFOX = 19                 '/* Protocols from Firefox */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -