mirror of
https://github.com/QB64Official/qb64.git
synced 2024-07-04 23:30:24 +00:00
Switches to www.qb64.org for user's own IP retrieval.
This commit is contained in:
parent
fef142085b
commit
2d760b9f29
|
@ -1,48 +1,70 @@
|
||||||
|
//Note: Updated 23/9/2018: Switched to www.qb64.org since .net is down; replaces implementation with download sample code from wiki
|
||||||
//Note: Updated 26/3/2014: Switched to WWW.QB64.NET to avoid IP changes when QB64 moves servers
|
//Note: Updated 26/3/2014: Switched to WWW.QB64.NET to avoid IP changes when QB64 moves servers
|
||||||
//Note: Updated 16/1/2013: Switched to QB64.NET IP service
|
//Note: Updated 16/1/2013: Switched to QB64.NET IP service
|
||||||
//Note: Updated 15/7/2013: Switched to 223.27.25.123 because of DNS issues
|
//Note: Updated 15/7/2013: Switched to 223.27.25.123 because of DNS issues
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
'ip.php:
|
||||||
|
'<?php
|
||||||
|
'$ip = $_SERVER["REMOTE_ADDR"];
|
||||||
|
'echo $ip;
|
||||||
|
'?>
|
||||||
PRINT whatismyip$
|
PRINT whatismyip$
|
||||||
|
|
||||||
$CHECKING:OFF
|
$CHECKING:OFF
|
||||||
FUNCTION whatismyip$
|
FUNCTION whatismyip$
|
||||||
c = _OPENCLIENT("TCP/IP:80:www.qb64.net")
|
url$ = "www.qb64.org/ip.php"
|
||||||
IF c = 0 THEN EXIT FUNCTION
|
url2$ = url$
|
||||||
'send request
|
x = INSTR(url2$, "/")
|
||||||
e$ = CHR$(13) + CHR$(10)
|
IF x THEN url2$ = LEFT$(url$, x - 1)
|
||||||
x$ = "GET /ip.php HTTP/1.1" + e$
|
client = _OPENCLIENT("TCP/IP:80:" + url2$)
|
||||||
x$ = x$ + "Host: www.qb64.net" + e$
|
IF client = 0 THEN EXIT FUNCTION
|
||||||
x$ = x$ + "" + e$
|
e$ = CHR$(13) + CHR$(10) ' end of line characters
|
||||||
PUT #c, , x$
|
url3$ = RIGHT$(url$, LEN(url$) - x + 1)
|
||||||
'wait for reply
|
x$ = "GET " + url3$ + " HTTP/1.1" + e$
|
||||||
t! = TIMER
|
x$ = x$ + "Host: " + url2$ + e$ + e$
|
||||||
DO
|
PUT #client, , x$
|
||||||
IF TIMER - t! > 5 THEN CLOSE c: EXIT FUNCTION
|
t! = TIMER ' start time
|
||||||
_DELAY 0.1
|
DO
|
||||||
GET #c, , a2$
|
_DELAY 0.05 ' 50ms delay (20 checks per second)
|
||||||
a$ = a$ + a2$
|
GET #client, , a2$
|
||||||
dots = 0
|
a$ = a$ + a2$
|
||||||
start = 0
|
i = INSTR(a$, "Content-Length:")
|
||||||
FOR x = 1 TO LEN(a$)
|
IF i THEN
|
||||||
a = ASC(a$, x)
|
i2 = INSTR(i, a$, e$)
|
||||||
IF a >= 48 AND a <= 57 THEN
|
IF i2 THEN
|
||||||
IF start = 0 THEN start = x
|
l = VAL(MID$(a$, i + 15, i2 - i - 14))
|
||||||
ELSE
|
i3 = INSTR(i2, a$, e$ + e$)
|
||||||
IF a = 46 AND start <> 0 THEN
|
IF i3 THEN
|
||||||
dots = dots + 1
|
i3 = i3 + 4 'move i3 to start of data
|
||||||
ELSE
|
IF (LEN(a$) - i3 + 1) = l THEN
|
||||||
IF dots = 3 THEN
|
CLOSE client ' CLOSE CLIENT
|
||||||
ip$ = MID$(a$, start, x - start)
|
d$ = MID$(a$, i3, l)
|
||||||
EXIT DO
|
|
||||||
END IF
|
'check IP format:
|
||||||
start = 0: dots = 0
|
i = 0 'total dots
|
||||||
END IF
|
x$ = "" 'current number
|
||||||
END IF
|
FOR i2 = 1 TO LEN(d$)
|
||||||
NEXT
|
IF ASC(d$, i2) = 46 THEN
|
||||||
LOOP
|
IF LEN(x$) = 0 THEN EXIT FUNCTION
|
||||||
CLOSE c
|
x$ = ""
|
||||||
whatismyip$ = ip$
|
i = i + 1
|
||||||
|
IF i > 3 THEN EXIT FUNCTION
|
||||||
|
ELSEIF ASC(d$, i2) < 48 OR ASC(d$, i2) > 57 THEN
|
||||||
|
EXIT FUNCTION
|
||||||
|
ELSE
|
||||||
|
x$ = x$ + MID$(d$, i2, 1)
|
||||||
|
END IF
|
||||||
|
NEXT
|
||||||
|
|
||||||
|
whatismyip$ = d$
|
||||||
|
EXIT FUNCTION
|
||||||
|
END IF ' availabledata = l
|
||||||
|
END IF ' i3
|
||||||
|
END IF ' i2
|
||||||
|
END IF ' i
|
||||||
|
LOOP UNTIL TIMER > t! + 5 ' (in seconds)
|
||||||
|
CLOSE client
|
||||||
END FUNCTION
|
END FUNCTION
|
||||||
$CHECKING:ON
|
$CHECKING:ON
|
||||||
*/
|
*/
|
||||||
|
@ -56,153 +78,206 @@ qbs* WHATISMYIP(){ //changed name from FUNC_WHATISMYIP to WHATISMYIP
|
||||||
uint32 tmp_cmem_sp=cmem_sp;
|
uint32 tmp_cmem_sp=cmem_sp;
|
||||||
|
|
||||||
|
|
||||||
//data.txt
|
//data1.txt
|
||||||
qbs *_FUNC_WHATISMYIP_STRING_WHATISMYIP=NULL;
|
qbs *_FUNC_WHATISMYIP_STRING_WHATISMYIP=NULL;
|
||||||
if (!_FUNC_WHATISMYIP_STRING_WHATISMYIP)_FUNC_WHATISMYIP_STRING_WHATISMYIP=qbs_new(0,0);
|
if (!_FUNC_WHATISMYIP_STRING_WHATISMYIP)_FUNC_WHATISMYIP_STRING_WHATISMYIP=qbs_new(0,0);
|
||||||
float *_FUNC_WHATISMYIP_SINGLE_C=NULL;
|
qbs *_FUNC_WHATISMYIP_STRING_URL=NULL;
|
||||||
if(_FUNC_WHATISMYIP_SINGLE_C==NULL){
|
if (!_FUNC_WHATISMYIP_STRING_URL)_FUNC_WHATISMYIP_STRING_URL=qbs_new(0,0);
|
||||||
_FUNC_WHATISMYIP_SINGLE_C=(float*)mem_static_malloc(4);
|
qbs *_FUNC_WHATISMYIP_STRING_URL2=NULL;
|
||||||
*_FUNC_WHATISMYIP_SINGLE_C=0;
|
if (!_FUNC_WHATISMYIP_STRING_URL2)_FUNC_WHATISMYIP_STRING_URL2=qbs_new(0,0);
|
||||||
|
float *_FUNC_WHATISMYIP_SINGLE_X=NULL;
|
||||||
|
if(_FUNC_WHATISMYIP_SINGLE_X==NULL){
|
||||||
|
_FUNC_WHATISMYIP_SINGLE_X=(float*)mem_static_malloc(4);
|
||||||
|
*_FUNC_WHATISMYIP_SINGLE_X=0;
|
||||||
|
}
|
||||||
|
float *_FUNC_WHATISMYIP_SINGLE_CLIENT=NULL;
|
||||||
|
if(_FUNC_WHATISMYIP_SINGLE_CLIENT==NULL){
|
||||||
|
_FUNC_WHATISMYIP_SINGLE_CLIENT=(float*)mem_static_malloc(4);
|
||||||
|
*_FUNC_WHATISMYIP_SINGLE_CLIENT=0;
|
||||||
}
|
}
|
||||||
qbs *_FUNC_WHATISMYIP_STRING_E=NULL;
|
qbs *_FUNC_WHATISMYIP_STRING_E=NULL;
|
||||||
if (!_FUNC_WHATISMYIP_STRING_E)_FUNC_WHATISMYIP_STRING_E=qbs_new(0,0);
|
if (!_FUNC_WHATISMYIP_STRING_E)_FUNC_WHATISMYIP_STRING_E=qbs_new(0,0);
|
||||||
|
qbs *_FUNC_WHATISMYIP_STRING_URL3=NULL;
|
||||||
|
if (!_FUNC_WHATISMYIP_STRING_URL3)_FUNC_WHATISMYIP_STRING_URL3=qbs_new(0,0);
|
||||||
|
byte_element_struct *byte_element_20=NULL;
|
||||||
|
if (!byte_element_20){
|
||||||
|
if ((mem_static_pointer+=12)<mem_static_limit) byte_element_20=(byte_element_struct*)(mem_static_pointer-12); else byte_element_20=(byte_element_struct*)mem_static_malloc(12);
|
||||||
|
}
|
||||||
qbs *_FUNC_WHATISMYIP_STRING_X=NULL;
|
qbs *_FUNC_WHATISMYIP_STRING_X=NULL;
|
||||||
if (!_FUNC_WHATISMYIP_STRING_X)_FUNC_WHATISMYIP_STRING_X=qbs_new(0,0);
|
if (!_FUNC_WHATISMYIP_STRING_X)_FUNC_WHATISMYIP_STRING_X=qbs_new(0,0);
|
||||||
byte_element_struct *byte_element_5276=NULL;
|
byte_element_struct *byte_element_21=NULL;
|
||||||
if (!byte_element_5276){
|
if (!byte_element_21){
|
||||||
if ((mem_static_pointer+=12)<mem_static_limit) byte_element_5276=(byte_element_struct*)(mem_static_pointer-12); else byte_element_5276=(byte_element_struct*)mem_static_malloc(12);
|
if ((mem_static_pointer+=12)<mem_static_limit) byte_element_21=(byte_element_struct*)(mem_static_pointer-12); else byte_element_21=(byte_element_struct*)mem_static_malloc(12);
|
||||||
}
|
}
|
||||||
float *_FUNC_WHATISMYIP_SINGLE_T=NULL;
|
float *_FUNC_WHATISMYIP_SINGLE_T=NULL;
|
||||||
if(_FUNC_WHATISMYIP_SINGLE_T==NULL){
|
if(_FUNC_WHATISMYIP_SINGLE_T==NULL){
|
||||||
_FUNC_WHATISMYIP_SINGLE_T=(float*)mem_static_malloc(4);
|
_FUNC_WHATISMYIP_SINGLE_T=(float*)mem_static_malloc(4);
|
||||||
*_FUNC_WHATISMYIP_SINGLE_T=0;
|
*_FUNC_WHATISMYIP_SINGLE_T=0;
|
||||||
}
|
}
|
||||||
qbs *_FUNC_WHATISMYIP_STRING_A2=NULL;
|
qbs *_FUNC_WHATISMYIP_STRING_A2=NULL;
|
||||||
if (!_FUNC_WHATISMYIP_STRING_A2)_FUNC_WHATISMYIP_STRING_A2=qbs_new(0,0);
|
if (!_FUNC_WHATISMYIP_STRING_A2)_FUNC_WHATISMYIP_STRING_A2=qbs_new(0,0);
|
||||||
qbs *_FUNC_WHATISMYIP_STRING_A=NULL;
|
qbs *_FUNC_WHATISMYIP_STRING_A=NULL;
|
||||||
if (!_FUNC_WHATISMYIP_STRING_A)_FUNC_WHATISMYIP_STRING_A=qbs_new(0,0);
|
if (!_FUNC_WHATISMYIP_STRING_A)_FUNC_WHATISMYIP_STRING_A=qbs_new(0,0);
|
||||||
float *_FUNC_WHATISMYIP_SINGLE_DOTS=NULL;
|
float *_FUNC_WHATISMYIP_SINGLE_I=NULL;
|
||||||
if(_FUNC_WHATISMYIP_SINGLE_DOTS==NULL){
|
if(_FUNC_WHATISMYIP_SINGLE_I==NULL){
|
||||||
_FUNC_WHATISMYIP_SINGLE_DOTS=(float*)mem_static_malloc(4);
|
_FUNC_WHATISMYIP_SINGLE_I=(float*)mem_static_malloc(4);
|
||||||
*_FUNC_WHATISMYIP_SINGLE_DOTS=0;
|
*_FUNC_WHATISMYIP_SINGLE_I=0;
|
||||||
}
|
}
|
||||||
float *_FUNC_WHATISMYIP_SINGLE_START=NULL;
|
float *_FUNC_WHATISMYIP_SINGLE_I2=NULL;
|
||||||
if(_FUNC_WHATISMYIP_SINGLE_START==NULL){
|
if(_FUNC_WHATISMYIP_SINGLE_I2==NULL){
|
||||||
_FUNC_WHATISMYIP_SINGLE_START=(float*)mem_static_malloc(4);
|
_FUNC_WHATISMYIP_SINGLE_I2=(float*)mem_static_malloc(4);
|
||||||
*_FUNC_WHATISMYIP_SINGLE_START=0;
|
*_FUNC_WHATISMYIP_SINGLE_I2=0;
|
||||||
}
|
}
|
||||||
float *_FUNC_WHATISMYIP_SINGLE_X=NULL;
|
float *_FUNC_WHATISMYIP_SINGLE_L=NULL;
|
||||||
if(_FUNC_WHATISMYIP_SINGLE_X==NULL){
|
if(_FUNC_WHATISMYIP_SINGLE_L==NULL){
|
||||||
_FUNC_WHATISMYIP_SINGLE_X=(float*)mem_static_malloc(4);
|
_FUNC_WHATISMYIP_SINGLE_L=(float*)mem_static_malloc(4);
|
||||||
*_FUNC_WHATISMYIP_SINGLE_X=0;
|
*_FUNC_WHATISMYIP_SINGLE_L=0;
|
||||||
}
|
}
|
||||||
double fornext_value5279;
|
float *_FUNC_WHATISMYIP_SINGLE_I3=NULL;
|
||||||
double fornext_finalvalue5279;
|
if(_FUNC_WHATISMYIP_SINGLE_I3==NULL){
|
||||||
double fornext_step5279;
|
_FUNC_WHATISMYIP_SINGLE_I3=(float*)mem_static_malloc(4);
|
||||||
uint8 fornext_step_negative5279;
|
*_FUNC_WHATISMYIP_SINGLE_I3=0;
|
||||||
byte_element_struct *byte_element_5280=NULL;
|
|
||||||
if (!byte_element_5280){
|
|
||||||
if ((mem_static_pointer+=12)<mem_static_limit) byte_element_5280=(byte_element_struct*)(mem_static_pointer-12); else byte_element_5280=(byte_element_struct*)mem_static_malloc(12);
|
|
||||||
}
|
}
|
||||||
float *_FUNC_WHATISMYIP_SINGLE_A=NULL;
|
byte_element_struct *byte_element_23=NULL;
|
||||||
if(_FUNC_WHATISMYIP_SINGLE_A==NULL){
|
if (!byte_element_23){
|
||||||
_FUNC_WHATISMYIP_SINGLE_A=(float*)mem_static_malloc(4);
|
if ((mem_static_pointer+=12)<mem_static_limit) byte_element_23=(byte_element_struct*)(mem_static_pointer-12); else byte_element_23=(byte_element_struct*)mem_static_malloc(12);
|
||||||
*_FUNC_WHATISMYIP_SINGLE_A=0;
|
|
||||||
}
|
}
|
||||||
qbs *_FUNC_WHATISMYIP_STRING_IP=NULL;
|
qbs *_FUNC_WHATISMYIP_STRING_D=NULL;
|
||||||
if (!_FUNC_WHATISMYIP_STRING_IP)_FUNC_WHATISMYIP_STRING_IP=qbs_new(0,0);
|
if (!_FUNC_WHATISMYIP_STRING_D)_FUNC_WHATISMYIP_STRING_D=qbs_new(0,0);
|
||||||
|
double fornext_value25;
|
||||||
|
double fornext_finalvalue25;
|
||||||
|
double fornext_step25;
|
||||||
if (new_error) goto exit_subfunc;
|
uint8 fornext_step_negative25;
|
||||||
|
byte_element_struct *byte_element_26=NULL;
|
||||||
|
if (!byte_element_26){
|
||||||
|
if ((mem_static_pointer+=12)<mem_static_limit) byte_element_26=(byte_element_struct*)(mem_static_pointer-12); else byte_element_26=(byte_element_struct*)mem_static_malloc(12);
|
||||||
|
}
|
||||||
|
byte_element_struct *byte_element_27=NULL;
|
||||||
|
if (!byte_element_27){
|
||||||
|
if ((mem_static_pointer+=12)<mem_static_limit) byte_element_27=(byte_element_struct*)(mem_static_pointer-12); else byte_element_27=(byte_element_struct*)mem_static_malloc(12);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
mem_lock *sf_mem_lock;
|
mem_lock *sf_mem_lock;
|
||||||
new_mem_lock();
|
new_mem_lock();
|
||||||
sf_mem_lock=mem_lock_tmp;
|
sf_mem_lock=mem_lock_tmp;
|
||||||
sf_mem_lock->type=3;
|
sf_mem_lock->type=3;
|
||||||
*_FUNC_WHATISMYIP_SINGLE_C=func__openclient(qbs_new_txt_len("TCP/IP:80:www.qb64.net",22));
|
if (new_error) goto exit_subfunc;
|
||||||
|
qbs_set(_FUNC_WHATISMYIP_STRING_URL,qbs_new_txt_len("www.qb64.org/ip.php",19));
|
||||||
qbs_cleanup(qbs_tmp_base,0);
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
if ((-(*_FUNC_WHATISMYIP_SINGLE_C== 0 ))||new_error){
|
qbs_set(_FUNC_WHATISMYIP_STRING_URL2,_FUNC_WHATISMYIP_STRING_URL);
|
||||||
goto exit_subfunc;
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
*_FUNC_WHATISMYIP_SINGLE_X=func_instr(NULL,_FUNC_WHATISMYIP_STRING_URL2,qbs_new_txt_len("/",1),0);
|
||||||
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
if ((*_FUNC_WHATISMYIP_SINGLE_X)||new_error){
|
||||||
|
qbs_set(_FUNC_WHATISMYIP_STRING_URL2,qbs_left(_FUNC_WHATISMYIP_STRING_URL,qbr(*_FUNC_WHATISMYIP_SINGLE_X- 1 )));
|
||||||
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
}
|
||||||
|
*_FUNC_WHATISMYIP_SINGLE_CLIENT=func__openclient(qbs_add(qbs_new_txt_len("TCP/IP:80:",10),_FUNC_WHATISMYIP_STRING_URL2));
|
||||||
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
if ((-(*_FUNC_WHATISMYIP_SINGLE_CLIENT== 0 ))||new_error){
|
||||||
|
goto exit_subfunc;
|
||||||
}
|
}
|
||||||
qbs_set(_FUNC_WHATISMYIP_STRING_E,qbs_add(func_chr( 13 ),func_chr( 10 )));
|
qbs_set(_FUNC_WHATISMYIP_STRING_E,qbs_add(func_chr( 13 ),func_chr( 10 )));
|
||||||
qbs_cleanup(qbs_tmp_base,0);
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
qbs_set(_FUNC_WHATISMYIP_STRING_X,qbs_add(qbs_new_txt_len("GET /ip.php HTTP/1.1",20),_FUNC_WHATISMYIP_STRING_E));
|
qbs_set(_FUNC_WHATISMYIP_STRING_URL3,qbs_right(_FUNC_WHATISMYIP_STRING_URL,qbr(_FUNC_WHATISMYIP_STRING_URL->len-*_FUNC_WHATISMYIP_SINGLE_X+ 1 )));
|
||||||
qbs_cleanup(qbs_tmp_base,0);
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
qbs_set(_FUNC_WHATISMYIP_STRING_X,qbs_add(qbs_add(_FUNC_WHATISMYIP_STRING_X,qbs_new_txt_len("Host: www.qb64.net",18)),_FUNC_WHATISMYIP_STRING_E));
|
qbs_set(_FUNC_WHATISMYIP_STRING_X,qbs_add(qbs_add(qbs_add(qbs_new_txt_len("GET ",4),_FUNC_WHATISMYIP_STRING_URL3),qbs_new_txt_len(" HTTP/1.1",9)),_FUNC_WHATISMYIP_STRING_E));
|
||||||
qbs_cleanup(qbs_tmp_base,0);
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
qbs_set(_FUNC_WHATISMYIP_STRING_X,qbs_add(qbs_add(_FUNC_WHATISMYIP_STRING_X,qbs_new_txt_len("",0)),_FUNC_WHATISMYIP_STRING_E));
|
qbs_set(_FUNC_WHATISMYIP_STRING_X,qbs_add(qbs_add(qbs_add(qbs_add(_FUNC_WHATISMYIP_STRING_X,qbs_new_txt_len("Host: ",6)),_FUNC_WHATISMYIP_STRING_URL2),_FUNC_WHATISMYIP_STRING_E),_FUNC_WHATISMYIP_STRING_E));
|
||||||
qbs_cleanup(qbs_tmp_base,0);
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
sub_put2(qbr(*_FUNC_WHATISMYIP_SINGLE_C),NULL,byte_element((uint64)_FUNC_WHATISMYIP_STRING_X->chr,_FUNC_WHATISMYIP_STRING_X->len,byte_element_5276),0);
|
sub_put2(qbr(*_FUNC_WHATISMYIP_SINGLE_CLIENT),NULL,byte_element((uint64)_FUNC_WHATISMYIP_STRING_X->chr,_FUNC_WHATISMYIP_STRING_X->len,byte_element_21),0);
|
||||||
qbs_cleanup(qbs_tmp_base,0);
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
*_FUNC_WHATISMYIP_SINGLE_T=func_timer(NULL,0);
|
*_FUNC_WHATISMYIP_SINGLE_T=func_timer(NULL,0);
|
||||||
do{
|
do{
|
||||||
if ((-((func_timer(NULL,0)-*_FUNC_WHATISMYIP_SINGLE_T)>( 5 )))||new_error){
|
sub__delay( 0.05E+0 );
|
||||||
sub_close(qbr(*_FUNC_WHATISMYIP_SINGLE_C),1);
|
sub_get2(qbr(*_FUNC_WHATISMYIP_SINGLE_CLIENT),NULL,_FUNC_WHATISMYIP_STRING_A2,0);
|
||||||
goto exit_subfunc;
|
|
||||||
}
|
|
||||||
sub__delay( 0.1E+0 );
|
|
||||||
sub_get2(qbr(*_FUNC_WHATISMYIP_SINGLE_C),NULL,_FUNC_WHATISMYIP_STRING_A2,0);
|
|
||||||
qbs_cleanup(qbs_tmp_base,0);
|
|
||||||
qbs_set(_FUNC_WHATISMYIP_STRING_A,qbs_add(_FUNC_WHATISMYIP_STRING_A,_FUNC_WHATISMYIP_STRING_A2));
|
|
||||||
qbs_cleanup(qbs_tmp_base,0);
|
|
||||||
*_FUNC_WHATISMYIP_SINGLE_DOTS= 0 ;
|
|
||||||
*_FUNC_WHATISMYIP_SINGLE_START= 0 ;
|
|
||||||
fornext_value5279= 1 ;
|
|
||||||
fornext_finalvalue5279=_FUNC_WHATISMYIP_STRING_A->len;
|
|
||||||
fornext_step5279= 1 ;
|
|
||||||
if (fornext_step5279<0) fornext_step_negative5279=1; else fornext_step_negative5279=0;
|
|
||||||
if (new_error) goto fornext_error5279;
|
|
||||||
goto fornext_entrylabel5279;
|
|
||||||
while(1){
|
|
||||||
fornext_value5279=fornext_step5279+(*_FUNC_WHATISMYIP_SINGLE_X);
|
|
||||||
fornext_entrylabel5279:
|
|
||||||
*_FUNC_WHATISMYIP_SINGLE_X=fornext_value5279;
|
|
||||||
qbs_cleanup(qbs_tmp_base,0);
|
|
||||||
if (fornext_step_negative5279){
|
|
||||||
if (fornext_value5279<fornext_finalvalue5279) break;
|
|
||||||
}else{
|
|
||||||
if (fornext_value5279>fornext_finalvalue5279) break;
|
|
||||||
}
|
|
||||||
fornext_error5279:;
|
|
||||||
*_FUNC_WHATISMYIP_SINGLE_A=qbs_asc(_FUNC_WHATISMYIP_STRING_A,qbr(*_FUNC_WHATISMYIP_SINGLE_X));
|
|
||||||
qbs_cleanup(qbs_tmp_base,0);
|
|
||||||
if (((-(*_FUNC_WHATISMYIP_SINGLE_A>= 48 ))&(-(*_FUNC_WHATISMYIP_SINGLE_A<= 57 )))||new_error){
|
|
||||||
if ((-(*_FUNC_WHATISMYIP_SINGLE_START== 0 ))||new_error){
|
|
||||||
*_FUNC_WHATISMYIP_SINGLE_START=*_FUNC_WHATISMYIP_SINGLE_X;
|
|
||||||
}
|
|
||||||
}else{
|
|
||||||
if (((-(*_FUNC_WHATISMYIP_SINGLE_A== 46 ))&(-(*_FUNC_WHATISMYIP_SINGLE_START!= 0 )))||new_error){
|
|
||||||
*_FUNC_WHATISMYIP_SINGLE_DOTS=*_FUNC_WHATISMYIP_SINGLE_DOTS+ 1 ;
|
|
||||||
}else{
|
|
||||||
if ((-(*_FUNC_WHATISMYIP_SINGLE_DOTS== 3 ))||new_error){
|
|
||||||
qbs_set(_FUNC_WHATISMYIP_STRING_IP,func_mid(_FUNC_WHATISMYIP_STRING_A,qbr(*_FUNC_WHATISMYIP_SINGLE_START),qbr(*_FUNC_WHATISMYIP_SINGLE_X-*_FUNC_WHATISMYIP_SINGLE_START),1));
|
|
||||||
qbs_cleanup(qbs_tmp_base,0);
|
|
||||||
goto dl_exit_5277;
|
|
||||||
}
|
|
||||||
*_FUNC_WHATISMYIP_SINGLE_START= 0 ;
|
|
||||||
*_FUNC_WHATISMYIP_SINGLE_DOTS= 0 ;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
fornext_exit_5278:;
|
|
||||||
}while(1);
|
|
||||||
dl_exit_5277:;
|
|
||||||
sub_close(qbr(*_FUNC_WHATISMYIP_SINGLE_C),1);
|
|
||||||
qbs_set(_FUNC_WHATISMYIP_STRING_WHATISMYIP,_FUNC_WHATISMYIP_STRING_IP);
|
|
||||||
qbs_cleanup(qbs_tmp_base,0);
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
qbs_set(_FUNC_WHATISMYIP_STRING_A,qbs_add(_FUNC_WHATISMYIP_STRING_A,_FUNC_WHATISMYIP_STRING_A2));
|
||||||
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
*_FUNC_WHATISMYIP_SINGLE_I=func_instr(NULL,_FUNC_WHATISMYIP_STRING_A,qbs_new_txt_len("Content-Length:",15),0);
|
||||||
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
if ((*_FUNC_WHATISMYIP_SINGLE_I)||new_error){
|
||||||
|
*_FUNC_WHATISMYIP_SINGLE_I2=func_instr(qbr(*_FUNC_WHATISMYIP_SINGLE_I),_FUNC_WHATISMYIP_STRING_A,_FUNC_WHATISMYIP_STRING_E,1);
|
||||||
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
if ((*_FUNC_WHATISMYIP_SINGLE_I2)||new_error){
|
||||||
|
*_FUNC_WHATISMYIP_SINGLE_L=func_val(func_mid(_FUNC_WHATISMYIP_STRING_A,qbr(*_FUNC_WHATISMYIP_SINGLE_I+ 15 ),qbr(*_FUNC_WHATISMYIP_SINGLE_I2-*_FUNC_WHATISMYIP_SINGLE_I- 14 ),1));
|
||||||
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
*_FUNC_WHATISMYIP_SINGLE_I3=func_instr(qbr(*_FUNC_WHATISMYIP_SINGLE_I2),_FUNC_WHATISMYIP_STRING_A,qbs_add(_FUNC_WHATISMYIP_STRING_E,_FUNC_WHATISMYIP_STRING_E),1);
|
||||||
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
if ((*_FUNC_WHATISMYIP_SINGLE_I3)||new_error){
|
||||||
|
*_FUNC_WHATISMYIP_SINGLE_I3=*_FUNC_WHATISMYIP_SINGLE_I3+ 4 ;
|
||||||
|
if ((qbs_cleanup(qbs_tmp_base,-(((float)((_FUNC_WHATISMYIP_STRING_A->len-*_FUNC_WHATISMYIP_SINGLE_I3+ 1 )))==((float)(*_FUNC_WHATISMYIP_SINGLE_L)))))||new_error){
|
||||||
|
sub_close(qbr(*_FUNC_WHATISMYIP_SINGLE_CLIENT),1);
|
||||||
|
qbs_set(_FUNC_WHATISMYIP_STRING_D,func_mid(_FUNC_WHATISMYIP_STRING_A,qbr(*_FUNC_WHATISMYIP_SINGLE_I3),qbr(*_FUNC_WHATISMYIP_SINGLE_L),1));
|
||||||
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
*_FUNC_WHATISMYIP_SINGLE_I= 0 ;
|
||||||
|
qbs_set(_FUNC_WHATISMYIP_STRING_X,qbs_new_txt_len("",0));
|
||||||
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
fornext_value25= 1 ;
|
||||||
|
fornext_finalvalue25=_FUNC_WHATISMYIP_STRING_D->len;
|
||||||
|
fornext_step25= 1 ;
|
||||||
|
if (fornext_step25<0) fornext_step_negative25=1; else fornext_step_negative25=0;
|
||||||
|
if (new_error) goto fornext_error25;
|
||||||
|
goto fornext_entrylabel25;
|
||||||
|
while(1){
|
||||||
|
fornext_value25=fornext_step25+(*_FUNC_WHATISMYIP_SINGLE_I2);
|
||||||
|
fornext_entrylabel25:
|
||||||
|
*_FUNC_WHATISMYIP_SINGLE_I2=fornext_value25;
|
||||||
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
if (fornext_step_negative25){
|
||||||
|
if (fornext_value25<fornext_finalvalue25) break;
|
||||||
|
}else{
|
||||||
|
if (fornext_value25>fornext_finalvalue25) break;
|
||||||
|
}
|
||||||
|
fornext_error25:;
|
||||||
|
if ((qbs_cleanup(qbs_tmp_base,-(qbs_asc(_FUNC_WHATISMYIP_STRING_D,qbr(*_FUNC_WHATISMYIP_SINGLE_I2))== 46 )))||new_error){
|
||||||
|
if ((qbs_cleanup(qbs_tmp_base,-(_FUNC_WHATISMYIP_STRING_X->len== 0 )))||new_error){
|
||||||
|
goto exit_subfunc;
|
||||||
|
}
|
||||||
|
qbs_set(_FUNC_WHATISMYIP_STRING_X,qbs_new_txt_len("",0));
|
||||||
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
*_FUNC_WHATISMYIP_SINGLE_I=*_FUNC_WHATISMYIP_SINGLE_I+ 1 ;
|
||||||
|
if ((-(*_FUNC_WHATISMYIP_SINGLE_I> 3 ))||new_error){
|
||||||
|
goto exit_subfunc;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
if (qbs_cleanup(qbs_tmp_base,(-(qbs_asc(_FUNC_WHATISMYIP_STRING_D,qbr(*_FUNC_WHATISMYIP_SINGLE_I2))< 48 ))|(-(qbs_asc(_FUNC_WHATISMYIP_STRING_D,qbr(*_FUNC_WHATISMYIP_SINGLE_I2))> 57 )))){
|
||||||
|
goto exit_subfunc;
|
||||||
|
}else{
|
||||||
|
qbs_set(_FUNC_WHATISMYIP_STRING_X,qbs_add(_FUNC_WHATISMYIP_STRING_X,func_mid(_FUNC_WHATISMYIP_STRING_D,qbr(*_FUNC_WHATISMYIP_SINGLE_I2), 1 ,1)));
|
||||||
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
fornext_continue_24:;
|
||||||
|
}
|
||||||
|
fornext_exit_24:;
|
||||||
|
qbs_set(_FUNC_WHATISMYIP_STRING_WHATISMYIP,_FUNC_WHATISMYIP_STRING_D);
|
||||||
|
qbs_cleanup(qbs_tmp_base,0);
|
||||||
|
goto exit_subfunc;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
dl_continue_22:;
|
||||||
|
}while((!(-(((float)((func_timer(NULL,0))))>((float)((*_FUNC_WHATISMYIP_SINGLE_T+ 5 ))))))&&(!new_error));
|
||||||
|
dl_exit_22:;
|
||||||
|
sub_close(qbr(*_FUNC_WHATISMYIP_SINGLE_CLIENT),1);
|
||||||
exit_subfunc:;
|
exit_subfunc:;
|
||||||
free_mem_lock(sf_mem_lock);
|
free_mem_lock(sf_mem_lock);
|
||||||
|
|
||||||
|
|
||||||
|
//"free1.txt"
|
||||||
//free.txt
|
qbs_free(_FUNC_WHATISMYIP_STRING_URL);
|
||||||
|
qbs_free(_FUNC_WHATISMYIP_STRING_URL2);
|
||||||
qbs_free(_FUNC_WHATISMYIP_STRING_E);
|
qbs_free(_FUNC_WHATISMYIP_STRING_E);
|
||||||
|
qbs_free(_FUNC_WHATISMYIP_STRING_URL3);
|
||||||
qbs_free(_FUNC_WHATISMYIP_STRING_X);
|
qbs_free(_FUNC_WHATISMYIP_STRING_X);
|
||||||
qbs_free(_FUNC_WHATISMYIP_STRING_A2);
|
qbs_free(_FUNC_WHATISMYIP_STRING_A2);
|
||||||
qbs_free(_FUNC_WHATISMYIP_STRING_A);
|
qbs_free(_FUNC_WHATISMYIP_STRING_A);
|
||||||
qbs_free(_FUNC_WHATISMYIP_STRING_IP);
|
qbs_free(_FUNC_WHATISMYIP_STRING_D);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if ((tmp_mem_static_pointer>=mem_static)&&(tmp_mem_static_pointer<=mem_static_limit)) mem_static_pointer=tmp_mem_static_pointer; else mem_static_pointer=mem_static;
|
if ((tmp_mem_static_pointer>=mem_static)&&(tmp_mem_static_pointer<=mem_static_limit)) mem_static_pointer=tmp_mem_static_pointer; else mem_static_pointer=mem_static;
|
||||||
cmem_sp=tmp_cmem_sp;
|
cmem_sp=tmp_cmem_sp;
|
||||||
qbs_maketmp(_FUNC_WHATISMYIP_STRING_WHATISMYIP);return _FUNC_WHATISMYIP_STRING_WHATISMYIP;
|
qbs_maketmp(_FUNC_WHATISMYIP_STRING_WHATISMYIP);return _FUNC_WHATISMYIP_STRING_WHATISMYIP;
|
||||||
|
|
Loading…
Reference in a new issue