Name of changed file | |
| Version and , file | Version and , file |
| Line 1 in | Line 1 in |
Context line Removed line Changed line Context line | Context line Changed line Added line Context line |
Ajp13Socket.cpp | |
| /usr/src/Sockets-2.2.9/Ajp13Socket.cpp Wed Jan 30, 2008 | /usr/src/Sockets-2.2.9a/Ajp13Socket.cpp Fri Feb 1, 2008 |
| Line 362 in Ajp13Socket.cpp | Line 362 in Ajp13Socket.cpp |
SendBuf( msg, ptr ); m_res.GetFile().fclose(); OnResponseComplete(); } | |
Debug.cpp | |
| /usr/src/Sockets-2.2.9/Debug.cpp Sun Nov 4, 2007 | /usr/src/Sockets-2.2.9a/Debug.cpp Fri Feb 1, 2008 |
| Line 18 in Debug.cpp | Line 18 in Debug.cpp |
"\x1B[0;0m\x1B[36m", // &c */ "\x1B[0;0m\x1B[37m", // &w */ "\x1B[0;0m\x1B[30m", // &l */ "\x1B[1;31m", // &R */ "\x1B[1;32m", // &G */ | |
| Line 25 in Debug.cpp | Line 24 in Debug.cpp |
"\x1B[1;35m", // &M */ "\x1B[1;36m", // &C */ "\x1B[1;37m", // &W */ "\x1B[1;30m" }; // &L */ | "\x1B[1;35m", // &M */ "\x1B[1;36m", // &C */ "\x1B[1;37m" }; // &W */ |
| Line 43 in Debug.cpp | Line 40 in Debug.cpp |
va_end(ap); fprintf(stderr, "%s", colors[Utility::ThreadID() % 16 + 1]); for (int i = 0; i < m_level[Utility::ThreadID()]; i++) fprintf(stderr, " "); | va_end(ap); fprintf(stderr, "%s", colors[Utility::ThreadID() % 14 + 1]); for (int i = 0; i < m_level[Utility::ThreadID()]; i++) fprintf(stderr, " "); |
Debug.h | |
| /usr/src/Sockets-2.2.9/Debug.h Sun Nov 4, 2007 | /usr/src/Sockets-2.2.9a/Debug.h Fri Feb 1, 2008 |
| Line 26 in Debug.h | Line 26 in Debug.h |
Debug() {} Debug(const std::string& x) : m_id(0), m_text(x) { fprintf(stderr, "%s", colors[Utility::ThreadID() % 16 + 1]); for (int i = 0; i < m_level[Utility::ThreadID()]; i++) fprintf(stderr, " "); | Debug() {} Debug(const std::string& x) : m_id(0), m_text(x) { fprintf(stderr, "%s", colors[Utility::ThreadID() % 14 + 1]); for (int i = 0; i < m_level[Utility::ThreadID()]; i++) fprintf(stderr, " "); |
| Line 33 in Debug.h | Line 33 in Debug.h |
} Debug(int id, const std::string& x) : m_id(id), m_text(x) { fprintf(stderr, "%s", colors[Utility::ThreadID() % 16 + 1]); for (int i = 0; i < m_level[Utility::ThreadID()]; i++) fprintf(stderr, " "); | } Debug(int id, const std::string& x) : m_id(id), m_text(x) { fprintf(stderr, "%s", colors[Utility::ThreadID() % 14 + 1]); for (int i = 0; i < m_level[Utility::ThreadID()]; i++) fprintf(stderr, " "); |
| Line 44 in Debug.h | Line 44 in Debug.h |
if (m_level[Utility::ThreadID()]) m_level[Utility::ThreadID()]--; fprintf(stderr, "%s", colors[Utility::ThreadID() % 16 + 1]); for (int i = 0; i < m_level[Utility::ThreadID()]; i++) fprintf(stderr, " "); | if (m_level[Utility::ThreadID()]) m_level[Utility::ThreadID()]--; fprintf(stderr, "%s", colors[Utility::ThreadID() % 14 + 1]); for (int i = 0; i < m_level[Utility::ThreadID()]; i++) fprintf(stderr, " "); |
Exception.h | |
| /usr/src/Sockets-2.2.9/Exception.h Sun Nov 4, 2007 | /usr/src/Sockets-2.2.9a/Exception.h Tue Feb 12, 2008 |
| Line 24 in Exception.h | Line 24 in Exception.h |
#define _Sockets_Exception_H #include "sockets-config.h" #include <string> | |
File.cpp | |
| /usr/src/Sockets-2.2.9/File.cpp Sun Nov 4, 2007 | /usr/src/Sockets-2.2.9a/File.cpp Fri Feb 1, 2008 |
| Line 65 in File.cpp | Line 66 in File.cpp |
void File::fclose() { if (m_fil) | void File::fclose() const { if (m_fil) |
File.h | |
| /usr/src/Sockets-2.2.9/File.h Sun Nov 4, 2007 | /usr/src/Sockets-2.2.9a/File.h Fri Feb 1, 2008 |
| Line 49 in File.h | Line 49 in File.h |
bool fopen(const std::string&, const std::string&); void fclose(); size_t fread(char *, size_t, size_t) const; | bool fopen(const std::string&, const std::string&); void fclose() const; size_t fread(char *, size_t, size_t) const; |
| Line 69 in File.h | Line 69 in File.h |
std::string m_path; std::string m_mode; FILE *m_fil; mutable long m_rptr; long m_wptr; | std::string m_path; std::string m_mode; mutable FILE *m_fil; mutable long m_rptr; long m_wptr; |
HttpBaseSocket.cpp | |
| /usr/src/Sockets-2.2.9/HttpBaseSocket.cpp Thu Jan 31, 2008 | /usr/src/Sockets-2.2.9a/HttpBaseSocket.cpp Fri Feb 1, 2008 |
| Line 187 in HttpBaseSocket.cpp | Line 187 in HttpBaseSocket.cpp |
if (!GetOutputLength()) { m_res.GetFile().fclose(); OnResponseComplete(); if (!m_b_keepalive) | |
HttpDebugSocket.cpp | |
| /usr/src/Sockets-2.2.9/HttpDebugSocket.cpp Thu Jan 24, 2008 | /usr/src/Sockets-2.2.9a/HttpDebugSocket.cpp Sun Apr 13, 2008 |
| Line 79 in HttpDebugSocket.cpp | Line 79 in HttpDebugSocket.cpp |
"<input type='text' name='text' value='test text'><br>" "<input type='submit' name='submit' value=' OK '></form>"); // enctype 'multipart/form-data' Sendf("<form action='/test_post' method='post' enctype='multipart/form-data'>"); Sendf("<input type=file name=the_file><br>"); Sendf("<input type=text name=the_name><br>"); Sendf("<input type=submit name=submit value=' test form-data '>"); Sendf("</form>"); Send( "<pre style='background: #e0e0e0'>"); Send(GetMethod() + " " + GetUrl() + " " + GetHttpVersion() + "\n"); | |
HttpRequest.cpp | |
| /usr/src/Sockets-2.2.9/HttpRequest.cpp Thu Jan 31, 2008 | /usr/src/Sockets-2.2.9a/HttpRequest.cpp Tue Feb 5, 2008 |
| Line 80 in HttpRequest.cpp | Line 80 in HttpRequest.cpp |
// -------------------------------------------------------------------------------------- HttpRequest& HttpRequest::operator=(const HttpRequest& src) { m_method = src.m_method; m_protocol = src.m_protocol; m_req_uri = src.m_req_uri; m_remote_addr = src.m_remote_addr; m_remote_host = src.m_remote_host; m_server_name = src.m_server_name; m_server_port = src.m_server_port; m_is_ssl = src.m_is_ssl; m_attribute = src.m_attribute; m_null = src.m_null; m_body_file = src.m_body_file; m_form = src.m_form; m_cookies = src.m_cookies; m_cookie = src.m_cookie; HttpTransaction::operator=(src); return *this; } // -------------------------------------------------------------------------------------- void HttpRequest::SetHttpMethod(const std::string& value) { | |
HttpRequest.h | |
| /usr/src/Sockets-2.2.9/HttpRequest.h Thu Jan 24, 2008 | /usr/src/Sockets-2.2.9a/HttpRequest.h Tue Feb 5, 2008 |
| Line 44 in HttpRequest.h | Line 44 in HttpRequest.h |
~HttpRequest(); HttpRequest& operator=(const HttpRequest& src); /** Get, Post */ void SetHttpMethod(const std::string& value); | |
HttpdForm.cpp | |
| /usr/src/Sockets-2.2.9/HttpdForm.cpp Thu Jan 31, 2008 | /usr/src/Sockets-2.2.9a/HttpdForm.cpp Sun Apr 13, 2008 |
| Line 36 in HttpdForm.cpp | Line 36 in HttpdForm.cpp |
#include "IFile.h" #include "HttpdForm.h" #include "Debug.h" #ifdef SOCKETS_NAMESPACE | |
| Line 42 in HttpdForm.cpp | Line 43 in HttpdForm.cpp |
#define TMPSIZE 32000 #ifdef _DEBUG #define DEB(x) x #else #define DEB(x) #endif HttpdForm::HttpdForm(IFile *infil, const std::string& content_type, size_t content_length) : raw(false) { DEB( Debug deb("HttpdForm");) CGI *cgi = NULL; size_t extra = 2; m_current = m_cgi.end(); DEB( deb << "Content-Type: " << content_type << Debug::endl();) if (content_type.size() >= 19 && content_type.substr(0, 19) == "multipart/form-data") | |
| Line 72 in HttpdForm.cpp | Line 80 in HttpdForm.cpp |
if (!m_strBoundary.empty()) { DEB( Debug deb("HttpdForm; parsing, boundary = " + m_strBoundary);) std::string content_type; std::string current_name; | |
| Line 101 in HttpdForm.cpp | Line 110 in HttpdForm.cpp |
slask[strlen(slask) - 1] = 0; } while (!infil -> eof() && *slask) { Parse pa(slask,";"); std::string h = pa.getword(); if (!strcasecmp(h.c_str(),"Content-type:")) { content_type = pa.getword(); } else if (!strcasecmp(h.c_str(),"Content-Disposition:")) { h = pa.getword(); if (!strcmp(h.c_str(),"form-data")) { pa.EnableQuote(true); h = pa.getword(); while (!h.empty()) { Parse pa2(slask,"="); std::string name = pa2.getword(); std::string h = pa2.getrest(); if (!strcmp(name.c_str(),"name")) { | slask[strlen(slask) - 1] = 0; } DEB( deb << "Parsing header, line = " << slask << Debug::endl();) while (!infil -> eof() && *slask) { Parse pa(slask,":"); std::string h = pa.getword(); std::string h2 = pa.getrest(); DEB( deb << "KEY:" << h << " REST:" << h2 << Debug::endl();) if (!strcasecmp(h.c_str(),"Content-type")) { Parse pa(h2, ";"); content_type = pa.getword(); DEB( deb << "Found Content-Type: " << content_type << Debug::endl();) } else if (!strcasecmp(h.c_str(),"Content-Disposition")) { Parse pa(h2, ";"); h = pa.getword(); if (!strcmp(h.c_str(),"form-data")) { DEB( deb << "Found Content-Disposition: form-data, parsing" << Debug::endl();) pa.EnableQuote(true); h = pa.getword(); while (!h.empty()) { Parse pa2(h,"="); std::string name = pa2.getword(); h = pa2.getrest(); if (!strcmp(name.c_str(),"name")) { |
| Line 132 in HttpdForm.cpp | Line 148 in HttpdForm.cpp |
current_name = h; } DEB( deb << " Found name = " << current_name << Debug::endl();) } else | |
| Line 154 in HttpdForm.cpp | Line 171 in HttpdForm.cpp |
current_filename = current_filename.substr(x); } DEB( deb << " Found filename = " << current_filename << Debug::endl();) } h = pa.getword(); | |
| Line 183 in HttpdForm.cpp | Line 201 in HttpdForm.cpp |
cgi = new CGI(current_name, val); m_cgi.push_back(cgi); DEB( deb << current_name << ": " << val << Debug::endl();) } else // current_filename.size() > 0 | |
HttpdSocket.cpp | |
| /usr/src/Sockets-2.2.9/HttpdSocket.cpp Sun Nov 4, 2007 | /usr/src/Sockets-2.2.9a/HttpdSocket.cpp Fri Feb 1, 2008 |
| Line 119 in HttpdSocket.cpp | Line 119 in HttpdSocket.cpp |
Utility::SetEnv("CONTENT_TYPE", m_content_type); Utility::SetEnv("CONTENT_LENGTH", m_content_length_str); /* #if (defined(SOLARIS8) || defined(SOLARIS)) { char slask[TMPSIZE]; if (GetMethod() == "GET") { sprintf(slask,"QUERY_STRING=%s", GetQueryString().c_str()); putenv(slask); } sprintf(slask,"REQUEST_METHOD=%s", GetMethod().c_str()); putenv(slask); sprintf(slask,"HTTP_COOKIE=%s", m_http_cookie.c_str()); putenv(slask); sprintf(slask,"CONTENT_TYPE=%s", m_content_type.c_str()); putenv(slask); sprintf(slask,"CONTENT_LENGTH=%s", m_content_length_str.c_str()); putenv(slask); } #elif defined _WIN32 { char slask[TMPSIZE]; if (GetMethod() == "GET") { sprintf(slask,"QUERY_STRING=%s", GetQueryString().c_str()); _putenv(slask); } sprintf(slask,"REQUEST_METHOD=%s", GetMethod().c_str()); _putenv(slask); sprintf(slask,"HTTP_COOKIE=%s", m_http_cookie.c_str()); _putenv(slask); sprintf(slask,"CONTENT_TYPE=%s", m_content_type.c_str()); _putenv(slask); sprintf(slask,"CONTENT_LENGTH=%s", m_content_length_str.c_str()); _putenv(slask); } #else if (GetMethod() == "GET") { setenv("QUERY_STRING", GetQueryString().c_str(), 1); } setenv("REQUEST_METHOD", GetMethod().c_str(), 1); setenv("HTTP_COOKIE", m_http_cookie.c_str(), 1); setenv("CONTENT_TYPE", m_content_type.c_str(), 1); setenv("CONTENT_LENGTH", m_content_length_str.c_str(), 1); #endif */ if (GetMethod() == "POST") { | |
| Line 176 in HttpdSocket.cpp | Line 130 in HttpdSocket.cpp |
if (GetUri() == "/image") { std::string str64 = "iVBORw0KGgoAAAANSUhEUgAAAGAAAABeCAIAAABTioayAAAACXBIWXMAAABkAAAAZAAPlsXdAAAAUHRF" "WHRSYXcgcHJvZmlsZSB0eXBlIEFQUDEyAApnZW5lcmljIHByb2ZpbGUKICAgICAgMTUKNDQ3NTYzNmI3" "OTAwMDEwMDA0MDAwMDAwM2MwMDAwCg2F1B0AABb4SURBVHja7Xx7rGVXed/3WGs/zvPeuTPXMzbjcUpq" "HAwlpQlYoUlDaJsAiVuFFKSKGlUlKgXqIKJAKxfRR4IUZEpSt1FoQEK4oYQEErlSFAoKIEoo2BQasBmc" "2NjyYzxz5957Hnufvfd6fF//2Oecez2hvbXvmZkg3U9b556Zc85ea//291rf+n0bVRWO5P8udLUn8Jdd" "jgA6QI4AOkCOADpAjgA6QI4AOkCOADpAjgA6QI4AOkCOADpAjgA6QI4AOkCOADpAjgA6QMxVHHtfoUWx" "/dP+C5fvABGv4gwBAK9qPWg5NLbvrjIY302ujgapAmKrQQiqC3xAQQF0H1AIcyXSq4XeZdegfedfWs78" "jYKAAgDi3sVri4mqzH+D9DSTu+I2dyVNTEFRl34GUTUikiqotrgoAqqIAhBxqzj7ZocAighXWJUuI0Cq" "injJ+SMAIZKolkXlGrOzM61mjfckCoN+X9UjorU26wgb7HTSPAfDRlVVFQAR21NeOT26XAC1p10CpKoI" "iKTO+ckkFpO4vVX1Bh3kkKRsDCIBE4sIMRNx8FTPYgwQfJ1k4ZpT3W4nAQBVQaSF/1pcw+VE63JrEKiC" "KhChC83Fi6EYEyp2uzxYN4kFY6H1O63TIUQAiCIIEgK5Rke7zWhUE2a9AR+/JunmpIr7of/eA2hhWREA" "QUlBkGg8af7s7E4n75+6Lu/2iBkUAgJLhP2+RkSJsNU5ACUCQCAyxTQ88eS0rt1gSGdOD621Ik8zs8uH" "0eUCSDSqCDHGUD/2mCvLXpbWp051bEqqGoIAINHeVRHRJTMREQBEACQEUDa0vT07/2QZvbvxphO9vhGh" "1m0j0uVzSysGaOF6QASJQvD4yKN1UeiZ053eULzX4FsspB221RdVZWYARaTFaeYXjIgiqqpEag16jw9+" "e3daTH/gBevHjw1EoIXle0ODdJH/KQiCxiiPPOLrWX7taeh1o3ek8wQH26jUao1qa1ZPy6VbgNovtIAi" "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" "MhMxAmhTBwhU" "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"; Send64(str64, "image/png"); } else | if (GetUri() == "/image") { Send64(Utility::Logo, "image/png"); } else |
| Line 294 in HttpdSocket.cpp | Line 165 in HttpdSocket.cpp |
if (GetUri() == "/image") { std::string str64 = "iVBORw0KGgoAAAANSUhEUgAAAGAAAABeCAIAAABTioayAAAACXBIWXMAAABkAAAAZAAPlsXdAAAAUHRF" "WHRSYXcgcHJvZmlsZSB0eXBlIEFQUDEyAApnZW5lcmljIHByb2ZpbGUKICAgICAgMTUKNDQ3NTYzNmI3" "OTAwMDEwMDA0MDAwMDAwM2MwMDAwCg2F1B0AABb4SURBVHja7Xx7rGVXed/3WGs/zvPeuTPXMzbjcUpq" "HAwlpQlYoUlDaJsAiVuFFKSKGlUlKgXqIKJAKxfRR4IUZEpSt1FoQEK4oYQEErlSFAoKIEoo2BQasBmc" "2NjyYzxz5957Hnufvfd6fF//2Oecez2hvbXvmZkg3U9b556Zc85ea//291rf+n0bVRWO5P8udLUn8Jdd" "jgA6QI4AOkCOADpAjgA6QI4AOkCOADpAjgA6QI4AOkCOADpAjgA6QI4AOkCOADpAjgA6QMxVHHtfoUWx" "/dP+C5fvABGv4gwBAK9qPWg5NLbvrjIY302ujgapAmKrQQiqC3xAQQF0H1AIcyXSq4XeZdegfedfWs78" "jYKAAgDi3sVri4mqzH+D9DSTu+I2dyVNTEFRl34GUTUikiqotrgoAqqIAhBxqzj7ZocAighXWJUuI0Cq" "injJ+SMAIZKolkXlGrOzM61mjfckCoN+X9UjorU26wgb7HTSPAfDRlVVFQAR21NeOT26XAC1p10CpKoI" "iKTO+ckkFpO4vVX1Bh3kkKRsDCIBE4sIMRNx8FTPYgwQfJ1k4ZpT3W4nAQBVQaSF/1pcw+VE63JrEKiC" "KhChC83Fi6EYEyp2uzxYN4kFY6H1O63TIUQAiCIIEgK5Rke7zWhUE2a9AR+/JunmpIr7of/eA2hhWREA" "QUlBkGg8af7s7E4n75+6Lu/2iBkUAgJLhP2+RkSJsNU5ACUCQCAyxTQ88eS0rt1gSGdOD621Ik8zs8uH" "0eUCSDSqCDHGUD/2mCvLXpbWp051bEqqGoIAINHeVRHRJTMREQBEACQEUDa0vT07/2QZvbvxphO9vhGh" "1m0j0uVzSysGaOF6QASJQvD4yKN1UeiZ053eULzX4FsspB221RdVZWYARaTFaeYXjIgiqqpEag16jw9+" "e3daTH/gBevHjw1EoIXle0ODdJH/KQiCxiiPPOLrWX7taeh1o3ek8wQH26jUao1qa1ZPy6VbgNovtIAi" "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" "MhMxAmhTBwhU" "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"; Send64(str64, "image/png"); } else | if (GetUri() == "/image") { Send64(Utility::Logo, "image/png"); } else |
IFile.h | |
| /usr/src/Sockets-2.2.9/IFile.h Sun Nov 4, 2007 | /usr/src/Sockets-2.2.9a/IFile.h Fri Feb 1, 2008 |
| Line 47 in IFile.h | Line 47 in IFile.h |
virtual bool fopen(const std::string&, const std::string&) = 0; virtual void fclose() = 0; virtual size_t fread(char *, size_t, size_t) const = 0; | virtual bool fopen(const std::string&, const std::string&) = 0; virtual void fclose() const = 0; virtual size_t fread(char *, size_t, size_t) const = 0; |
INSTALL | |
| /usr/src/Sockets-2.2.9/INSTALL Thu Jan 31, 2008 | /usr/src/Sockets-2.2.9a/INSTALL Sat Feb 2, 2008 |
| Line 83 in INSTALL | Line 83 in INSTALL |
Please see steps 2-5 above for some details on configuring the library. When linking on cygwin/mingw, add the following libraries: -lwsock32 -lws2_32 | |
Lock.cpp | |
| /usr/src/Sockets-2.2.9/Lock.cpp Sun Nov 4, 2007 | /usr/src/Sockets-2.2.9a/Lock.cpp Sun Apr 13, 2008 |
| Line 36 in Lock.cpp | Line 36 in Lock.cpp |
Lock::Lock(Mutex& m) : m_mutex(m) { m_mutex.Lock(); | Lock::Lock(const Mutex& m) : m_mutex(m) { m_mutex.Lock(); |
Lock.h | |
| /usr/src/Sockets-2.2.9/Lock.h Sun Nov 4, 2007 | /usr/src/Sockets-2.2.9a/Lock.h Sun Apr 13, 2008 |
| Line 43 in Lock.h | Line 43 in Lock.h |
{ public: Lock(Mutex&); ~Lock(); private: Mutex& m_mutex; }; | { public: Lock(const Mutex&); ~Lock(); private: const Mutex& m_mutex; }; |
Makefile | |
| /usr/src/Sockets-2.2.9/Makefile Thu Jan 31, 2008 | /usr/src/Sockets-2.2.9a/Makefile Thu Jan 31, 2008 |
| Line 76 in Makefile | Line 76 in Makefile |
# no binary files, zip will translate lf to cr lf FILES = *.h *.cpp Makefile Makefile.* Project/*.ds* \ INSTALL README.macosx gpl.txt mkdot.sh \ Project.net/Sockets/*.vcproj Project.net/Sockets/*.sln \ Project.net/Test/*.vcproj \ | # no binary files, zip will translate lf to cr lf FILES = *.h *.cpp Makefile Makefile.* Project/*.ds* \ INSTALL Changelog README.macosx gpl.txt mkdot.sh \ Project.net/Sockets/*.vcproj Project.net/Sockets/*.sln \ Project.net/Test/*.vcproj \ |
Makefile.version | |
| /usr/src/Sockets-2.2.9/Makefile.version Thu Jan 24, 2008 | /usr/src/Sockets-2.2.9a/Makefile.version Thu Jan 31, 2008 |
| Line 1 in Makefile.version | Line 1 in Makefile.version |
VERSION = 2.2.9 DIFF_VERSION = 2.2.8 # Sockets | VERSION = 2.2.9a DIFF_VERSION = 2.2.9 # Sockets |
MemFile.cpp | |
| /usr/src/Sockets-2.2.9/MemFile.cpp Fri Nov 30, 2007 | /usr/src/Sockets-2.2.9a/MemFile.cpp Fri Feb 1, 2008 |
| Line 96 in MemFile.cpp | Line 96 in MemFile.cpp |
void MemFile::fclose() { } | void MemFile::fclose() const { } |
MemFile.h | |
| /usr/src/Sockets-2.2.9/MemFile.h Sun Nov 4, 2007 | /usr/src/Sockets-2.2.9a/MemFile.h Fri Feb 1, 2008 |
| Line 60 in MemFile.h | Line 60 in MemFile.h |
bool fopen(const std::string& path, const std::string& mode); void fclose(); size_t fread(char *ptr, size_t size, size_t nmemb) const; | bool fopen(const std::string& path, const std::string& mode); void fclose() const; size_t fread(char *ptr, size_t size, size_t nmemb) const; |
Mutex.cpp | |
| /usr/src/Sockets-2.2.9/Mutex.cpp Sun Nov 4, 2007 | /usr/src/Sockets-2.2.9a/Mutex.cpp Sun Apr 13, 2008 |
| Line 55 in Mutex.cpp | Line 55 in Mutex.cpp |
void Mutex::Lock() { #ifdef _WIN32 | void Mutex::Lock() const { #ifdef _WIN32 |
| Line 66 in Mutex.cpp | Line 66 in Mutex.cpp |
void Mutex::Unlock() { #ifdef _WIN32 | void Mutex::Unlock() const { #ifdef _WIN32 |
Mutex.h | |
| /usr/src/Sockets-2.2.9/Mutex.h Sun Nov 4, 2007 | /usr/src/Sockets-2.2.9a/Mutex.h Sun Apr 13, 2008 |
| Line 51 in Mutex.h | Line 51 in Mutex.h |
~Mutex(); void Lock(); void Unlock(); private: #ifdef _WIN32 HANDLE m_mutex; #else pthread_mutex_t m_mutex; #endif }; | ~Mutex(); void Lock() const; void Unlock() const; private: #ifdef _WIN32 HANDLE m_mutex; #else mutable pthread_mutex_t m_mutex; #endif }; |
README.macosx | |
| /usr/src/Sockets-2.2.9/README.macosx Wed Oct 3, 2007 | /usr/src/Sockets-2.2.9a/README.macosx Thu Jan 31, 2008 |
| Line 1 in README.macosx | Line 1 in README.macosx |
Find uuid.h here http://www.die.net/doc/linux/include/uuid/uuid.h | MAC notes --------- The file OSX.zip contains xcode project files for an older version of the library. Find uuid.h (if missing) here: http://www.die.net/doc/linux/include/uuid/uuid.h This used to be a problem, but isn't any more afaik. |
Thread.h | |
| /usr/src/Sockets-2.2.9/Thread.h Sun Nov 4, 2007 | /usr/src/Sockets-2.2.9a/Thread.h Thu Feb 7, 2008 |
| Line 69 in Thread.h | Line 69 in Thread.h |
virtual void Run() = 0; #ifdef _WIN32 HANDLE GetThread() { return m_thread; } unsigned GetThreadId() { return m_dwThreadId; } #else pthread_t GetThread() { return m_thread; } #endif bool IsRunning(); void SetRunning(bool x); | |
| Line 77 in Thread.h | Line 84 in Thread.h |
bool IsDestructor(); private: Thread(const Thread& ) {} Thread& operator=(const Thread& ) { return *this; } #ifdef _WIN32 HANDLE m_thread; | bool IsDestructor(); protected: #ifdef _WIN32 HANDLE m_thread; |
| Line 86 in Thread.h | Line 91 in Thread.h |
pthread_t m_thread; #endif private: Thread(const Thread& ) {} Thread& operator=(const Thread& ) { return *this; } bool m_running; bool m_release; | |
Utility.cpp | |
| /usr/src/Sockets-2.2.9/Utility.cpp Thu Jan 24, 2008 | /usr/src/Sockets-2.2.9a/Utility.cpp Fri Feb 1, 2008 |
| Line 68 in Utility.cpp | Line 68 in Utility.cpp |
#endif #endif const char *Utility::Logo = "iVBORw0KGgoAAAANSUhEUgAAAGAAAABeCAIAAABTioayAAAACXBIWXMAAABkAAAAZAAPlsXdAAAAUHRF" "WHRSYXcgcHJvZmlsZSB0eXBlIEFQUDEyAApnZW5lcmljIHByb2ZpbGUKICAgICAgMTUKNDQ3NTYzNmI3" "OTAwMDEwMDA0MDAwMDAwM2MwMDAwCg2F1B0AABb4SURBVHja7Xx7rGVXed/3WGs/zvPeuTPXMzbjcUpq" "HAwlpQlYoUlDaJsAiVuFFKSKGlUlKgXqIKJAKxfRR4IUZEpSt1FoQEK4oYQEErlSFAoKIEoo2BQasBmc" "2NjyYzxz5957Hnufvfd6fF//2Oecez2hvbXvmZkg3U9b556Zc85ea//291rf+n0bVRWO5P8udLUn8Jdd" "jgA6QI4AOkCOADpAjgA6QI4AOkCOADpAjgA6QI4AOkCOADpAjgA6QI4AOkCOADpAjgA6QMxVHHtfoUWx" "/dP+C5fvABGv4gwBAK9qPWg5NLbvrjIY302ujgapAmKrQQiqC3xAQQF0H1AIcyXSq4XeZdegfedfWs78" "jYKAAgDi3sVri4mqzH+D9DSTu+I2dyVNTEFRl34GUTUikiqotrgoAqqIAhBxqzj7ZocAighXWJUuI0Cq" "injJ+SMAIZKolkXlGrOzM61mjfckCoN+X9UjorU26wgb7HTSPAfDRlVVFQAR21NeOT26XAC1p10CpKoI" "iKTO+ckkFpO4vVX1Bh3kkKRsDCIBE4sIMRNx8FTPYgwQfJ1k4ZpT3W4nAQBVQaSF/1pcw+VE63JrEKiC" "KhChC83Fi6EYEyp2uzxYN4kFY6H1O63TIUQAiCIIEgK5Rke7zWhUE2a9AR+/JunmpIr7of/eA2hhWREA" "QUlBkGg8af7s7E4n75+6Lu/2iBkUAgJLhP2+RkSJsNU5ACUCQCAyxTQ88eS0rt1gSGdOD621Ik8zs8uH" "0eUCSDSqCDHGUD/2mCvLXpbWp051bEqqGoIAINHeVRHRJTMREQBEACQEUDa0vT07/2QZvbvxphO9vhGh" "1m0j0uVzSysGaOF6QASJQvD4yKN1UeiZ053eULzX4FsspB221RdVZWYARaTFaeYXjIgiqqpEag16jw9+" "e3daTH/gBevHjw1EoIXle0ODdJH/KQiCxiiPPOLrWX7taeh1o3ek8wQH26jUao1qa1ZPy6VbgNovtIAi" "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"; | |
Utility.h | |
| /usr/src/Sockets-2.2.9/Utility.h Thu Jan 24, 2008 | /usr/src/Sockets-2.2.9a/Utility.h Thu Feb 7, 2008 |
| Line 75 in Utility.h | Line 75 in Utility.h |
ncmap() {} }; class Uri { public: Uri(const std::string& url) : m_url(url), m_port(0), m_path(url) { size_t pos = url.find("://"); if (pos != std::string::npos) { m_protocol = Utility::ToLower(url.substr(0, pos)); m_port = (m_protocol == "http") ? 80 : (m_protocol == "https") ? 443 : 0; m_host = url.substr(pos + 3); pos = m_host.find("/"); if (pos != std::string::npos) { m_path = m_host.substr(pos); m_host = m_host.substr(0, pos); } pos = m_host.find(":"); if (pos != std::string::npos) { m_port = atoi(m_host.substr(pos + 1).c_str()); m_host = m_host.substr(0, pos); } } pos = std::string::npos; for (size_t i = 0; i < m_path.size(); i++) if (m_path[i] == '.') pos = i; if (pos != std::string::npos) m_ext = m_path.substr(pos + 1); } const std::string Url() { return m_url; } const std::string Protocol() { return m_protocol; } const std::string Host() { return m_host; } int Port() { return m_port; } const std::string Path() { return m_path; } const std::string Extension() { return m_ext; } private: std::string m_url; std::string m_protocol; std::string m_host; int m_port; std::string m_path; std::string m_ext; }; public: static std::string base64(const std::string& str_in); | |
| Line 164 in Utility.h | Line 208 in Utility.h |
static unsigned long Rnd(); static const char *Logo; private: static std::string m_host; ///< local hostname | |