Changeset 10


Ignore:
Timestamp:
Jul 27, 2012 9:48:34 PM (7 years ago)
Author:
psaiteja
Message:

For some websites, the GET request URLs should not contain the host information preceded by http://. They should just be the relative location information of the requested object. (eg: / instead of http://www.google.com/). Found this error, when visiting specific forums like andhrawatch.com.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • VSNClient/appClientModule/jProxy.java

    r3 r10  
    499499                // the designated OutputStream 
    500500                StringBuffer header = new StringBuffer(""); 
     501                StringBuffer temp_header = new StringBuffer(""); 
    501502                String data = ""; 
     503                StringBuffer pre_url= new StringBuffer(""); 
     504                StringBuffer post_url = new StringBuffer(""); 
    502505                int responseCode = 200; 
    503506                int contentLength = 0; 
     
    509512                        data = readLine(in); 
    510513                        if (data != null) { 
    511                                 header.append(data + "\r\n"); 
    512514                                pos = data.indexOf(" "); 
    513515                                if ((data.toLowerCase().startsWith("http")) && (pos >= 0) 
     
    523525                                        } 
    524526                                } else { 
    525                                         if ((pos >= 0) && (data.indexOf(" ", pos + 1) >= 0)) { 
    526                                                 String suffix = data.substring(pos + 1, 
    527                                                                 data.indexOf(" ", pos + 1)); 
     527                                        if ((pos >= 0) && (data.indexOf(" ", pos + 1) >= 0)) {                                           
     528                                                pre_url.setLength(0); 
     529                                                pre_url.append(data.substring(0,pos)); 
     530                                                String suffix = data.substring(pos + 1,data.indexOf(" ", pos + 1)); 
    528531                                                url.setLength(0); 
    529532                                                url.append(suffix.trim()); 
     533                                                post_url.setLength(0); 
     534                                                post_url.append(data.substring(data.indexOf(" ", pos + 1)+1)); 
    530535                                        } 
    531536                                } 
     
    537542                                if (data.length() == 0) 
    538543                                        break; 
    539                                 header.append(data + "\r\n"); 
     544                                temp_header.append(data + "\r\n"); 
    540545 
    541546                                // check for the Host header 
     
    553558                        } 
    554559 
     560                        String newurl = url.substring(url.indexOf(host.toString())+host.length()); 
     561                        url.setLength(0); 
     562                        url.append(newurl); 
    555563                        // add a blank line to terminate the header info 
    556                         header.append("\r\n"); 
     564                        header.append(pre_url+" "+url+" "+post_url+"\r\n"+temp_header+"\r\n"); 
    557565 
    558566                        // convert the header to a byte array, and write it to our stream 
     
    726734                                                                        //sha1.update(url_string.getBytes(), 0, 
    727735                                                                        //              url_string.length()); 
    728                                                                         byte [] udigest = sha1.digest(url.toString().getBytes()); 
     736                                                                        byte [] udigest = sha1.digest((host.toString()+url.toString()).getBytes()); 
    729737                                                                         
    730738                                                                        //convert the byte to hex format method 2 
Note: See TracChangeset for help on using the changeset viewer.