rejetto forum

Software => Other languages => HFS ~ HTTP File Server => Italiano => Topic started by: TC on August 08, 2003, 11:00:02 AM

Title: 1.5b2 Testing
Post by: TC on August 08, 2003, 11:00:02 AM
HFS 1.5b2 testing - 08/08/2003

A) BUG nello schema di autenticazione (testato con IE 6 SP1)
Cartella protetta (ho testato con una cartella non auto update)
Presumo che il problema sia nella connessione persistente, succede questo:
Invio il GET della risorsa
Ricevo il WWW-Authenticate
Mi appare la dialog nel browser in cui inserire user/pass
Al send dell'Authenticate: contenente le credenziali, HFS non risponde e il browser va in timeout dopo un po.
Nel monitor di HFS è segnata "Idle" la connessione.


B) HTTP Note Personali
Nota1: i metodi HTTP diversi da GET vengono interpretati come GET. Se non vuoi inserirli nell'interprete, almeno metti un blocco che HEAD, etc risultano uno status 405 o 501. PS: ho notato che HEAD non va solo per le Directory, per i files funonzia.

Nota2: Clients and servers SHOULD NOT assume that a persistent connection is maintained for HTTP versions less than 1.1 unless it is explicitly signaled. See section 19.6.2 for more information on backward compatibility with HTTP/1.0 clients.
Ho anche provato a fare request con HTTP/0.9 (doh) e mi ritorna sempre persistente... okkio che alcuni clients magari poi non ci girano.

Nota3: HFS Ignora il parametro Connection: Close

Nota4: A sto punto, visto che visualizzi la stringa nel template, metti anche l'header "Server:" nell'HTTP :)


B1) Compatibilità Browser
Ti segnalo incompatibile questo useragent:
lynx (Lynx Version 2.8.4rel.1 (17 Jul 2001))
   Halta dopo aver dato il messaggio HTTP/1.1 200 OK
   In HFS segnala questo:
      11.42.40  192.168.1.2:32897 GET / HTTP/1.0
      11.42.40  192.168.1.2:32897 Host: 192.168.1.21:8080
      11.42.40  192.168.1.2:32897 Accept: text/html, text/plain, application/x-troff-man,           text/*, application/x-debian-package, audio/basic, */*;q=0.01
      11.42.40  192.168.1.2:32897 Accept-Encoding: gzip, compress
      11.42.40  192.168.1.2:32897 Accept-Language: en
      11.42.40  192.168.1.2:32897 User-Agent: Lynx/2.8.4rel.1 libwww-FM/2.14
      11.42.40  192.168.1.2:32897 Requested GET/
      11.42.40  192.168.1.2:32897 Replied 1259 bytes sent
   Se killo lynx, segnala: Disconnected 1259 bytes sent



C) Simple Flood-test:
===> Test di flood su Apache

Code: [Select]
midnight:~# cat /public/iso/MY.ISO | nc -o dump 192.168.1.2 80
HTTP/1.1 414 Request-URI Too Large
Date: Fri, 08 Aug 2003 08:43:54 GMT
Server: Apache
Connection: close
Content-Type: text/html; charset=iso-8859-1

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<HTML><HEAD>
<TITLE>414 Request-URI Too Large</TITLE>
</HEAD><BODY>
<H1>Request-URI Too Large</H1>
The requested URL's length exceeds the capacity
limit for this server.<P>
request failed: URI too long<P>
</BODY></HTML>

Connessione interrotta.
Questo avviene dopo aver inviato 0x1fff byte di dati (visibile dal dump)


===> Test di flood su HFS (running su 192.168.1.21:8080 - Win2000 Prof SP4)

Code: [Select]
midnight:~# cat /public/iso/MY.ISO | nc 192.168.1.21 8080

            CPU      Tempo CPU   Memoria    
hfs.exe     95-97    4.00        13Mb        

Risultando inchiodato... (dialog bloccata)
Più va avanti più la memoria cresce.

Se interrompo il flood mi segnala solo un "Disconnected 0 byte sent"
Ovviamente se sto inviando dati con nc, il server agli altri client risulta bloccato.
Risultato: DoS

Nota: so bene che non è un server "di produzione"... ma non vorrei comunque trovarmi la macchina semi inchiodata semplicemente xche qualche #][@òèò#@[ si diverte a testare la sua intelligenza sul mio HFS.

Ho fatto anche altri test, e HFS si è comportato decisamente bene :)


D) GUI
Menu - Limits - Bans: in griglia come ip address posso scrivere anche "Mia Nonna"
Menu - Limits - Max conn (entrambe le voci): valori negativi dovrebbero produrre lo stesso effetto di valori decimali
Menu contestuale su connessione corrente, Ban Ip: sarebbe bello se chiede se si vogliono kikkare le connessioni correnti di quell'ip (ora come ora rimangono cmq attive)
Log Window: aggiungere barra di scorrimento orizzontale
Log Window: aggiungere, quando ci sono dei requested, magari anche lo stato di ritorno (ad es non logga che ritorna 404 al client o altro), e magari un log più dettagliato sugli errori che si riscontrano (non solo Disconnected)
Log Window: aggiungere se viene rifiutata una connessione (se ci sono troppi utenti connessi o se uno degli altri limiti entra in gioco, anche ban) e xche.
Memu - Edit HTML Template: magari un "load from file" ci starebbe bene.
Menu contestuale su Log Window: Details non mi funziona (o meglio: non ottengo nessun effetto apparente)


E) Ancora su Halt browser
Se effettuo una richiesta di una risorsa inesistente, mi ritorna 404 (giustamente) ma nessun content; questo risulta in un halt del browser che invece si aspetta un content da visualizzare.



Alcune informazioni contenute in questo testing non ti saranno utili, altre sono solo consigli... ho voluto testare alcune cose che mi son venute in mente, in vista della "stable" che probabilmente risulterà "stable" un bel po.
Ah... carinissima l'icona del lucchetto a fianco delle folder :) molto azzeccata.

Ciao, TC
Title: 1.5b2 Testing
Post by: rejetto on August 11, 2003, 06:15:47 PM
A. ho fatto dei test, e sia opera7 che IE5 non mi rispondevano dopo che inviavo l'errore.
siccome senza connessioni persistenti funzionavano, ho risolto chiudendo la connessione in questi casi.
d'ora in poi la connessione sarà persistente solo in caso in cui il server risponda positivamente (_reply e _reply_wo_body)

B.1. fixed, il test sul metodo era a valle del test sulle directory :)

B.2. d'ora in poi le connessioni persistenti saranno abilitate solo se ver >= 1.1 e non è richiesto diversamente, oppure indipdentemente dalla versione se richiesto esplicitamente

B.3. fixed

B.4. nel template lo puoi togliere e non mi va di mettere un'opzione per togliere l'header Server. per ora lo metto, poi si vedrà.

B1. immagino s'impalli parsando l'html. ma non ci sono versioni + recenti? forse dovremo segnalare il bug al team di lynx

C. ho impostato un limite anch'io di 8kb al buffer d'ingresso. magari ripeti il test con la beta3 :)

D.1. per ora non vedo motivo di fare controlli su quell'input, anche xkè in futuro la sintassi sarà + flessibile e in delphi di base non ci stanno le RE

D.2. fixed
D.3. done
D.4. done
D.5. done
D.6. done
D.7. done
D.8. fixed

E. fixed. non avevo idea che dovessi fornire un content, pensavo che di fronte il 404 il browser utilizzasse una pagina di default!


vi pubblico la beta3 a breve! :)
Title: 1.5b2 Testing
Post by: rejetto on August 11, 2003, 06:28:02 PM
dimenticavo... lavoro eccellente, grazie mille :)
Title: 1.5b2 Testing
Post by: TC on August 18, 2003, 07:25:29 AM
:)

Son tornato dalle vacanze...
appena ho tempo testo la 1.5rc1

bye! good work!
Title: 1.5b2 Testing
Post by: rejetto on August 18, 2003, 11:24:00 PM
non vedo l'ora :)

vedrai che carino il nuovo html ;)