aboutsummaryrefslogtreecommitdiff
path: root/packages/Symbian/readme.txt
diff options
context:
space:
mode:
authorDan Fandrich <dan@coneharvesters.com>2008-04-22 22:53:53 +0000
committerDan Fandrich <dan@coneharvesters.com>2008-04-22 22:53:53 +0000
commit1960eebc2d021ecf5ffc3f6d4e935d54aa592c72 (patch)
tree258a993cae8cec4f2eff333347adb8b87e809b84 /packages/Symbian/readme.txt
parentad1dd086937138f56e5942ae0840867372c77d03 (diff)
Added support for running on Symbian OS.
Diffstat (limited to 'packages/Symbian/readme.txt')
-rw-r--r--packages/Symbian/readme.txt71
1 files changed, 71 insertions, 0 deletions
diff --git a/packages/Symbian/readme.txt b/packages/Symbian/readme.txt
new file mode 100644
index 000000000..5ce85eada
--- /dev/null
+++ b/packages/Symbian/readme.txt
@@ -0,0 +1,71 @@
+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. 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 and 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.
+
+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 OS does not provide for redirecting the standard I/O streams, so
+stdin always comes from the keyboard and stdout always goes to the
+console; stderr is thrown away. 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, so you
+may need to use the -o option to specify a specific location to store a
+downloaded file.
+
+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.
+
+All screen output disappears after curl exits, so after a transfer completes,
+curl waits by default for Enter to pressed before exiting. This behaviour
+is suppressed when the -s option is given.
+
+The "home directory" in Symbian is C:\Private\10206442\. The .curlrc is read
+from this directory on startup.
+
+libcurl notes
+-------------
+libcurl uses writeable 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 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.
+
+P.I.P.S. causes a USER:87 panic if a timeout much longer than half an hour
+is selected.
+
+SSL/TLS encryption is not supported.
+
+
+Dan Fandrich
+dan@coneharvesters.com
+April 2008