|
System | : | Linux MiraNet 3.0.0-14-generic-pae #23-Ubuntu SMP Mon Nov 21 22:07:10 UTC 2011 i686 |
Software | : | Apache. PHP/5.3.6-13ubuntu3.10 |
ID | : | uid=65534(nobody) gid=65534(nogroup) groups=65534(nogroup)
|
|
Safe Mode | : | OFF |
Open_Basedir | : | OFF |
Freespace | : | 25.76 GB of 70.42 GB (36.59%) |
|
MySQL: ON MSSQL: OFF Oracle: OFF PostgreSQL: OFF Curl: OFF Sockets: ON Fetch: OFF Wget: ON Perl: ON |
Disabled Functions: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
|
[ System Info ]
[ Processes ]
[ SQL Manager ]
[ Eval ]
[ Encoder ]
[ Mailer ]
[ Back Connection ]
[ Backdoor Server ]
[ Kernel Exploit Search ]
[ MD5 Decrypter ]
[ Reverse IP ]
[ Kill Shell ]
[ FTP Brute-Force ]
|
|
/
usr/
src/
courier-0.66.1/
rfc2045/
- drwxrwxrwx
|
Viewing file: rfc3676parsercpp.C (2.1 KB) -rw-rw-rw-Select action/file-type:  ( +) |  ( +) |  ( +) | Code ( +) | Session ( +) |  ( +) | SDB ( +) |  ( +) |  ( +) |  ( +) |  ( +) |  ( +) |
/* ** Copyright 2011 Double Precision, Inc. ** See COPYING for distribution information. ** */
#include "rfc3676parser.h"
extern "C" {
int mail::tpp_trampoline_line_begin(size_t quote_level, void *arg) { reinterpret_cast<mail::textplainparser *>(arg) ->line_begin(quote_level);
return 0; }
int mail::tpp_trampoline_line_contents(const unicode_char *ptr, size_t cnt, void *arg) { reinterpret_cast<mail::textplainparser *>(arg) ->line_contents(ptr, cnt); return 0; }
int mail::tpp_trampoline_line_flowed_notify(void *arg) { reinterpret_cast<mail::textplainparser *>(arg) ->line_flowed_notify();
return 0; }
int mail::tpp_trampoline_line_end(void *arg) { reinterpret_cast<mail::textplainparser *>(arg) ->line_end(); return 0; } }
mail::textplainparser::textplainparser() : handle(NULL) { }
mail::textplainparser::~textplainparser() { end(); }
bool mail::textplainparser::begin(const std::string &charset, bool flowed, bool delsp) { end();
struct rfc3676_parser_info info=rfc3676_parser_info();
info.charset=charset.c_str(); info.isflowed=flowed == true; info.isdelsp=delsp == true;
info.line_begin=&tpp_trampoline_line_begin; info.line_contents=&tpp_trampoline_line_contents; info.line_flowed_notify=&tpp_trampoline_line_flowed_notify; info.line_end=&tpp_trampoline_line_end;
info.arg=reinterpret_cast<void *>(this);
if ((handle=rfc3676parser_init(&info)) == NULL) return false;
return true; }
void mail::textplainparser::end(bool &unicode_errflag) { int rc=0;
if (handle) { rfc3676parser_deinit(handle, &rc); handle=NULL; }
unicode_errflag=rc != 0; }
void mail::textplainparser::line_begin(size_t quote_level) { if (quote_level) { std::vector<unicode_char> vec;
vec.reserve(quote_level+1); vec.insert(vec.end(), quote_level, '>'); vec.push_back(' '); line_contents(&vec[0], vec.size()); } }
void mail::textplainparser::line_contents(const unicode_char *data, size_t cnt) { }
void mail::textplainparser::line_flowed_notify() { }
void mail::textplainparser::line_end() { unicode_char nl='\n';
line_contents(&nl, 1); }
|