Annotation of embedaddon/curl/packages/Symbian/readme.txt, revision 1.1.1.1

1.1       misho       1: Curl on Symbian OS
                      2: ==================
                      3: This is a basic port of curl and libcurl to Symbian OS.  The port is
                      4: a straightforward one using Symbian's P.I.P.S. POSIX compatibility
                      5: layer, which was first available for OS version 9.1. A more complete
                      6: port would involve writing a Symbian C++ binding, or wrapping libcurl
                      7: as a Symbian application server with a C++ API to handle requests
                      8: from client applications as well as creating a GUI application to allow
                      9: file transfers.  The author has no current plans to do so.
                     10: 
                     11: This means that integration with standard Symbian OS programs can be
                     12: tricky, since libcurl isn't designed with Symbian's native asynchronous
                     13: message passing idioms in mind. However, it may be possible to use libcurl
                     14: in an active object-based application through libcurl's multi interface.
                     15: The port is most easily used when porting POSIX applications to Symbian
                     16: OS using P.I.P.S. (a.k.a. Open C).
                     17: 
                     18: libcurl is built as a standard Symbian ordinal-linked DLL, and curl is
                     19: built as a text mode EXE application.  They have not been Symbian
                     20: Signed, which is required in order to install them on most phones.
                     21: 
                     22: Following are some things to keep in mind when using this port.
                     23: 
                     24: 
                     25: curl notes
                     26: ----------
                     27: When starting curl in the Windows emulator from the Windows command-line,
                     28: place a double-dash -- before the first curl command-line option.
                     29: e.g. \epoc32\release\winscw\udeb\curl -- -v http://localhost/
                     30: Failure to do so may mean that some of your options won't be correctly
                     31: processed.
                     32: 
                     33: Symbian's ESHELL allows for redirecting stdin and stdout to files, but
                     34: stderr goes to the epocwind.out file (on the emulator).  The standard
                     35: curl options -o, --stderr and --trace-ascii can be used to
                     36: redirect output to a file (or stdout) instead.
                     37: 
                     38: P.I.P.S. doesn't inherit the current working directory at startup from
                     39: the shell, so relative path names are always relative to
                     40: C:\Private\f0206442\.
                     41: 
                     42: P.I.P.S. provides no way to disable echoing of characters as they are
                     43: entered, so passwords typed in on the console will be visible.  It also
                     44: line buffers keyboard input so interactive telnet sessions are not very
                     45: feasible.
                     46: 
                     47: All screen output disappears after curl exits, so after a command completes,
                     48: curl waits by default for Enter to be pressed before exiting.  This behaviour
                     49: is suppressed when the -s option is given.
                     50: 
                     51: curl's "home directory" in Symbian is C:\Private\f0206442\. The .curlrc file
                     52: is read from this directory on startup.
                     53: 
                     54: 
                     55: libcurl notes
                     56: -------------
                     57: libcurl uses writable static data, so the EPOCALLOWDLLDATA option is
                     58: used in its MMP file, with the corresponding additional memory usage
                     59: and limitations on the Windows emulator.
                     60: 
                     61: curl_global_init() *must* be called (either explicitly or implicitly through
                     62: calling certain other libcurl functions) before any libcurl functions
                     63: that could allocate memory (like curl_getenv()).
                     64: 
                     65: P.I.P.S. doesn't support signals or the alarm() call, so some timeouts
                     66: (such as the connect timeout) are not honoured. This should not be
                     67: an issue once support for CURLRES_THREADED is added for Symbian.
                     68: 
                     69: P.I.P.S. causes a USER:87 panic if certain timeouts much longer than
                     70: half an hour are selected.
                     71: 
                     72: LDAP, SCP or SFTP methods are not supported due to lack of support for
                     73: the dependent libraries on Symbian.
                     74: 
                     75: gzip and deflate decompression is supported when the appropriate macro
                     76: is uncommented in the libcurl.mmp file.
                     77: 
                     78: SSL/TLS encryption is not enabled by default, but it is possible to add
                     79: when the OpenSSL libraries included in the S60 Open C SDK are available.
                     80: The appropriate macro in the libcurl.mmp file must be uncommented to
                     81: enable support.
                     82: 
                     83: NTLM authentication may not work on some servers due to the lack of
                     84: MD4 support in the OpenSSL libraries included with Open C.
                     85: 
                     86: Debug builds are not supported (i.e. --enable-debug) because they cause
                     87: additional symbol exports in the library which are not frozen in the .def
                     88: files.
                     89: 
                     90: 
                     91: Dan Fandrich
                     92: dan@coneharvesters.com
                     93: March 2010

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>