EnglishРусский  

   ..

   ftp.g

   http.g

   internet.g

   ping.g

   proxy.g

   socket.g

   strinet.g

Реклама

 РђРІС‚оматизация работы Р·Р° компьютером
Все в одном: редактор скриптов, запуск по расписанию, запись с мышки и клавиатуры и т.д.

CreateInstall
Бесплатные и коммерческие инсталляторы

Gentee нужна ваша помощь!
Как разместить рекламу

'; /* define('_SAPE_USER', 'c55bf3fc219b9610c2b8abde2d8ed171'); require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php'); $o['host'] = 'www.gentee.ru'; $sape = new SAPE_client($o); unset($o); echo $sape->return_links(); */ print '

'; print ' '; function cp1251_utf8( $sInput ) { $sOutput = ""; for ( $i = 0; $i < strlen( $sInput ); $i++ ) { $iAscii = ord( $sInput[$i] ); if ( $iAscii >= 192 && $iAscii <= 255 ) $sOutput .= "&#".( 1040 + ( $iAscii - 192 ) ).";"; else if ( $iAscii == 168 ) $sOutput .= "&#".( 1025 ).";"; else if ( $iAscii == 184 ) $sOutput .= "&#".( 1105 ).";"; else $sOutput .= $sInput[$i]; } return $sOutput; } ?>
source\lib\Internet\internet.g
  1 
  2 define
  3 {
  4    AF_UNIX               = 1 
  5    AF_INET               = 2 
  6    
  7    IPPROTO_IP            = 0           /* dummy for IP */
  8    IPPROTO_ICMP          = 1           /* control message protocol */
  9    IPPROTO_IGMP          = 2           /* internet group management protocol */
 10    IPPROTO_GGP           = 3           /* gateway^2 (deprecated) */
 11    IPPROTO_TCP           = 6           /* tcp */
 12    IPPROTO_PUP           = 12          /* pup */
 13    IPPROTO_UDP           = 17          /* user datagram protocol */
 14    IPPROTO_IDP           = 22          /* xns idp */
 15    IPPROTO_ND            = 77          /* UNOFFICIAL net disk proto */
 16    IPPROTO_RAW           = 255         /* raw IP packet */
 17    
 18    SOCK_STREAM           = 1               /* stream socket */
 19    SOCK_DGRAM            = 2               /* datagram socket */
 20    SOCK_RAW              = 3               /* raw-protocol interface */
 21    SOCK_RDM              = 4               /* reliably-delivered message */
 22    SOCK_SEQPACKET        = 5               /* sequenced packet stream */
 23 
 24    WSADESCRIPTION_LEN    =  257 //256
 25    WSASYS_STATUS_LEN     =  129 //128
 26    INVALID_SOCKET        =  0xFFFFFFFF
 27    SOCKET_ERROR          =  0xFFFFFFFF
 28 }
 29 
 30 define <export>   
 31 {
 32    ERRINET_DLLVERSION    =  0x0001   // Не поддерживаемая версия 
 33    ERRINET_HTTPDATA                  // Получены не HTTP данные 
 34    ERRINET_USERBREAK                 // процесс прерван пользователем
 35    ERRINET_OPENFILE                  // Невозможно открыть файл 
 36    ERRINET_WRITEFILE                 // Невозможно записать файл
 37    ERRINET_READFILE                  // Невозможно прочитать файл
 38 	ERRFTP_RESPONSE                   // Неверный ответ сервера
 39 	ERRFTP_QUIT                       // Неверный ответ сервера на QUIT
 40 	ERRFTP_BADUSER                    // Несуществующее имя
 41 	ERRFTP_BADPSW                     // Неверный пароль
 42 	ERRFTP_PORT                       // Ошибка PORT
 43 
 44    // Команды - уведомления
 45    //   nfyfunc( uint code, nfyinfo ni )
 46    NFYINET_ERROR         =  0x0001   // Ошибка код ошибки по inet_error
 47    NFYINET_CONNECT                   // Соединение с сервером
 48    NFYINET_SEND                      // Посылаем запрос
 49    NFYINET_POST                      // Отправляем данные
 50    NFYINET_HEAD                      // Обработали заголовок param на httpinfo
 51    NFYINET_REDIRECT                  // Перенаправление в sparam
 52    NFYINET_GET                       // Получили данные param - общий размер
 53    NFYINET_PUT                       // Отправить данные param - общий размер
 54    NFYINET_END                       // Конец процесса
 55 	NFYFTP_RESPONSE                   // Ответ сервера в поле head
 56 	NFYFTP_SENDCMD                    // Команда для сервера в поле head   
 57 	NFYFTP_NOTPASV                    // Не может быть passive mode
 58    
 59    // http_get & http_getfile   
 60    HTTPF_REDIRECT        =  0x0001   // Использовать перенаправление
 61    HTTPF_FILE            =  0x1000   // buf содержит имя файла
 62    
 63    // Флаги http_getfile функции
 64    HTTPF_CONTINUE        =  0x0100   // Если файл уже существует и его 
 65                                      // размер меньше, то докачивать
 66    HTTPF_SETTIME         =  0x0200   // Установить серверное время
 67    // Флаги http_get функции
 68    HTTPF_STR             =  0x0010   // Добавлять 0 к данным
 69 }
 70 
 71 define
 72 {
 73    INET_HTTP  = 0   
 74    INET_FTP
 75 }
 76 
 77 type WSAData {
 78    ushort                  wVersion
 79    ushort                  wHighVersion
 80    reserved                szDescription[ $WSADESCRIPTION_LEN ]
 81    reserved                szSystemStatus[ $WSASYS_STATUS_LEN ]
 82    ushort                  iMaxSockets
 83    ushort                  iMaxUdpDg
 84    uint                    lpVendorInfo
 85 }
 86 
 87 type sockaddr_in 
 88 {
 89    short     sin_family
 90    ushort    sin_port
 91    uint      sin_addr
 92    reserved  sin_zero[8]
 93 }
 94 
 95 type sockaddr {
 96     ushort    sa_family
 97     reserved  sa_data[ 14 ]
 98 }
 99 
100 type hostent 
101 {
102    uint      h_name           /* official name of host */
103    uint      h_aliases        /* alias list */
104    short     h_addrtype       /* host address type */
105    short     h_length         /* length of address */
106    uint      h_addr_list      /* list of addresses */
107 }
108 
109 type proxyinfo
110 {
111    str    host    // хост прокси
112    uint   port    // порт
113    uint   enable  // включено или нет
114 }
115 
116 type httpinfo
117 {
118    uint      code
119    datetime  dt
120    str       size
121    str       location
122 }
123 
124 type inetnotify
125 {
126    str       url
127    str       head
128    uint      param
129    str       sparam
130 }
131  
132 global 
133 {
134    uint  ineterror         // Код последней ошибки
135    arr   proxy[2] of proxyinfo   // массив proxy   
136    str   inet_useragent = "User-Agent: Mozilla/4.0 (compatible; MSIE 5.0; Windows 98)"
137 }
138 
139 import "ws2_32.dll" {
140 	uint accept( uint, uint, uint )
141 	uint bind( uint, uint, uint )
142    uint closesocket( uint )
143    uint connect( uint, uint, uint )
144    uint gethostbyname( uint )
145 	uint getsockname( uint, uint, uint )                    
146    ushort htons( ushort )
147    uint   inet_addr( uint )
148    uint   inet_ntoa( uint )
149 	uint   listen( uint, uint )
150 	uint   ntohl( uint )
151 	ushort ntohs( ushort )  
152    uint recv( uint, uint, uint, uint )
153    uint send( uint, uint, uint, uint )
154    uint shutdown( uint, uint )
155    uint socket( uint, uint, uint ) -> createsocket
156    int  WSACleanup()
157    uint WSAGetLastError()
158    int  WSAStartup( ushort, WSAData )
159 }
160 
161 func uint inet_error
162 {
163    return ineterror
164 }
165 
166 func uint inet_seterror
167 {
168    ineterror = WSAGetLastError()
169    return 0
170 }
171 
172 include 
173 {
174    "strinet.g"
175    "socket.g"
176    "proxy.g"
177    "http.g"
178 	"ftp.g"
179 }
180 
181 func uint inet_init()
182 {
183    WSAData wsaData
184    
185    ineterror = WSAStartup( 0x0202, wsaData )
186    
187    if ineterror : return 0               
188    if wsaData.wVersion != 0x0202 
189    {
190        WSACleanup( )
191        ineterror = $ERRINET_DLLVERSION
192        return 0
193    }
194    return 1
195 }
196 
197 func uint inet_close
198 {
199    ineterror = WSACleanup()
200    return !ineterror
201 }
Редактировать