feat: build proect for restproxy
This commit is contained in:
93
proxy_c/third-lib/libcurl/packages/Symbian/readme.txt
Normal file
93
proxy_c/third-lib/libcurl/packages/Symbian/readme.txt
Normal file
@@ -0,0 +1,93 @@
|
||||
Curl on Symbian OS
|
||||
==================
|
||||
This is a basic port of curl and libcurl to Symbian OS. The port is
|
||||
a straightforward one using Symbian's P.I.P.S. POSIX compatibility
|
||||
layer, which was first available for OS version 9.1. A more complete
|
||||
port would involve writing a Symbian C++ binding, or wrapping libcurl
|
||||
as a Symbian application server with a C++ API to handle requests
|
||||
from client applications as well as creating a GUI application to allow
|
||||
file transfers. The author has no current plans to do so.
|
||||
|
||||
This means that integration with standard Symbian OS programs can be
|
||||
tricky, since libcurl isn't designed with Symbian's native asynchronous
|
||||
message passing idioms in mind. However, it may be possible to use libcurl
|
||||
in an active object-based application through libcurl's multi interface.
|
||||
The port is most easily used when porting POSIX applications to Symbian
|
||||
OS using P.I.P.S. (a.k.a. Open C).
|
||||
|
||||
libcurl is built as a standard Symbian ordinal-linked DLL, and curl is
|
||||
built as a text mode EXE application. They have not been Symbian
|
||||
Signed, which is required in order to install them on most phones.
|
||||
|
||||
Following are some things to keep in mind when using this port.
|
||||
|
||||
|
||||
curl notes
|
||||
----------
|
||||
When starting curl in the Windows emulator from the Windows command-line,
|
||||
place a double-dash -- before the first curl command-line option.
|
||||
e.g. \epoc32\release\winscw\udeb\curl -- -v http://localhost/
|
||||
Failure to do so may mean that some of your options won't be correctly
|
||||
processed.
|
||||
|
||||
Symbian's ESHELL allows for redirecting stdin and stdout to files, but
|
||||
stderr goes to the epocwind.out file (on the emulator). The standard
|
||||
curl options -o, --stderr and --trace-ascii can be used to
|
||||
redirect output to a file (or stdout) instead.
|
||||
|
||||
P.I.P.S. doesn't inherit the current working directory at startup from
|
||||
the shell, so relative path names are always relative to
|
||||
C:\Private\f0206442\.
|
||||
|
||||
P.I.P.S. provides no way to disable echoing of characters as they are
|
||||
entered, so passwords typed in on the console will be visible. It also
|
||||
line buffers keyboard input so interactive telnet sessions are not very
|
||||
feasible.
|
||||
|
||||
All screen output disappears after curl exits, so after a command completes,
|
||||
curl waits by default for Enter to be pressed before exiting. This behaviour
|
||||
is suppressed when the -s option is given.
|
||||
|
||||
curl's "home directory" in Symbian is C:\Private\f0206442\. The .curlrc file
|
||||
is read from this directory on startup.
|
||||
|
||||
|
||||
libcurl notes
|
||||
-------------
|
||||
libcurl uses writable static data, so the EPOCALLOWDLLDATA option is
|
||||
used in its MMP file, with the corresponding additional memory usage
|
||||
and limitations on the Windows emulator.
|
||||
|
||||
curl_global_init() *must* be called (either explicitly or implicitly through
|
||||
calling certain other libcurl functions) before any libcurl functions
|
||||
that could allocate memory (like curl_getenv()).
|
||||
|
||||
P.I.P.S. doesn't support signals or the alarm() call, so some timeouts
|
||||
(such as the connect timeout) are not honoured. This should not be
|
||||
an issue once support for CURLRES_THREADED is added for Symbian.
|
||||
|
||||
P.I.P.S. causes a USER:87 panic if certain timeouts much longer than
|
||||
half an hour are selected.
|
||||
|
||||
LDAP, SCP or SFTP methods are not supported due to lack of support for
|
||||
the dependent libaries on Symbian.
|
||||
|
||||
gzip and deflate decompression is supported when the appropriate macro
|
||||
is uncommented in the libcurl.mmp file.
|
||||
|
||||
SSL/TLS encryption is not enabled by default, but it is possible to add
|
||||
when the OpenSSL libraries included in the S60 Open C SDK are available.
|
||||
The appropriate macro in the libcurl.mmp file must be uncommented to
|
||||
enable support.
|
||||
|
||||
NTLM authentication may not work on some servers due to the lack of
|
||||
MD4 support in the OpenSSL libraries included with Open C.
|
||||
|
||||
Debug builds are not supported (i.e. --enable-debug) because they cause
|
||||
additional symbol exports in the library which are not frozen in the .def
|
||||
files.
|
||||
|
||||
|
||||
Dan Fandrich
|
||||
dan@coneharvesters.com
|
||||
March 2010
|
||||
Reference in New Issue
Block a user