ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/proj/trunk/Search/HttpHandler.cpp
(Generate patch)

Comparing trunk/Search/HttpHandler.cpp (file contents):
Revision 211 by douglas, 2003-07-19T18:46:12-07:00 vs.
Revision 331 by Douglas Thrift, 2004-04-05T15:50:25-07:00

# Line 1 | Line 1
1   /* ============================================================================
2   * Douglas Thrift's Search Engine License
3   *
4 < * Copyright (C) 2002-2003, Douglas Thrift. All Rights Reserved.
4 > * Copyright (C) 2002-2004, Douglas Thrift. All Rights Reserved.
5   * Redistribution and use in source and binary forms, with or without
6   * modification, are permitted provided that the following conditions are met:
7   *
# Line 46 | Line 46
46   //
47   // Douglas Thrift
48   //
49 < // $Id: HttpHandler.cpp,v 1.22 2003/07/20 01:46:12 douglas Exp $
49 > // $Id$
50  
51   #include "HttpHandler.h"
52  
# Line 58 | Line 58
58   #include <sys/socket.h>
59   #include <netinet/in.h>
60   #include <netdb.h>
61 +
62 + inline int closesocket(SOCKET s) { return close(s); }
63   #endif
64  
65   HttpHandler::HttpHandler()
# Line 184 | Line 186 | bool HttpHandler::handle(URL &url, const
186                  unsigned dot = line.find('.');
187                  unsigned space = line.find(' ');
188  
189 <                unsigned major = strtoul(line.substr(5, dot - 5).c_str(), 0, 10);
190 <                unsigned minor = strtoul(line.substr(dot + 1, space - dot - 1).c_str(),
191 <                        0, 10);
189 >                unsigned major;
190 >                unsigned minor;
191 >
192 >                istringstream number(line.substr(5, dot - 5) + " " + line.substr(dot
193 >                        + 1, space - dot - 1));
194 >
195 >                number >> major;
196 >                number >> minor;
197  
198                  if (major > 1)
199                  {
# Line 196 | Line 203 | bool HttpHandler::handle(URL &url, const
203                          return answer;
204                  }
205  
206 <                response = code(strtoul(line.substr(space + 1).c_str(), 0, 10));
206 >                number.clear();
207 >                number.str(line.substr(space + 1, 3));
208 >                number >> response;
209  
210                  if (response < ok) do line = getline(); while (line != "");
211          }
# Line 221 | Line 230 | bool HttpHandler::handle(URL &url, const
230                          }
231                          else if (field == "Content-Length")
232                          {
233 <                                length = strtoul(value.c_str(), 0, 10);
233 >                                istringstream number(value);
234 >
235 >                                number >> length;
236                          }
237                          else if (field == "Location")
238                          {
# Line 272 | Line 283 | bool HttpHandler::handle(URL &url, const
283  
284   void HttpHandler::clear()
285   {
286 + #ifdef _OpenSSL_
287          if (tls)
288          {
289                  SSL_shutdown(ssl);
290                  SSL_free(ssl);
291                  SSL_CTX_free(ctx);
292          }
293 + #endif
294  
295          closesocket(http);
296  
# Line 346 | Line 359 | void HttpHandler::populate()
359  
360                  do
361                  {
362 <                        chunk = strtoul(getline().c_str(), 0, 16);
362 >                        istringstream number(getline());
363 >
364 >                        number.setf(ios_base::hex, ios_base::basefield);
365 >                        number >> chunk;
366  
367                          unsigned left = chunk;
368  
# Line 788 | Line 804 | bool HttpHandler::starttls()
804          RAND_seed(junk, seed % 30 + 2);
805  
806          delete junk;
807 + #else
808 +        if (debug) cerr << "junk = /dev/urandom\n";
809   #endif
810  
811          ctx = SSL_CTX_new(TLSv1_client_method());

Comparing trunk/Search/HttpHandler.cpp (property svn:eol-style):
Revision 211 by douglas, 2003-07-19T18:46:12-07:00 vs.
Revision 331 by Douglas Thrift, 2004-04-05T15:50:25-07:00

# Line 0 | Line 1
1 + native

Comparing trunk/Search/HttpHandler.cpp (property svn:keywords):
Revision 211 by douglas, 2003-07-19T18:46:12-07:00 vs.
Revision 331 by Douglas Thrift, 2004-04-05T15:50:25-07:00

# Line 0 | Line 1
1 + Id

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines