1- GskBuffer profiling... currently we use 16 32k buffers... 2 is there any way to optimize this? 3- searchpath in dns is not obeyed (gsk-dns-client's client-task needs 4 a "searchpath_index" member that tries the global domain only 5 after all search paths.) 6- deal with raise() bug on RH9.0 (!= kill (getpid(), sig)) 7- error handling (mostly marked by XXX/TODO flags) 8 - hunt down g_warnings and g_messages that should be GError returns 9- fix XXX marks in dns code 10- fix XXX marks in http code 11- add sufficient test code to GskMimeMultipartDecoder to remove 12 debugging prints 13- FTP support 14- mailto: URIs 15- basic tutorials need serious work. [simple-http-server is very misleading, should use gskhttpcontent] 16- BUILD: should check for zlib 17- TODO: contention on POST data: right now, we buffer as much 18 data as the user feels like giving us... need to block the hook. 19- TODO: GskStreamConnection::handle_error() needs to NOT just warn, 20 it needs to be adjustable (ie a signal or trap) 21 (or a bunch of bits to suppress certain errors, EPIPE, ECONNREFUSED etc) 22- optimization: use read_buffer() and write_buffer() in gskstreamconnection 23- http: Chunked-Body doesn't support a Trailer. 24- HTTP authentication. 25 - DONE: most of the structures and parsing are in place. 26 Still some TODOs in the parsing code that may require structural changes. 27 GskHttp{Request,Response} have the necessary members. 28 - Need methods to compute and check "authorization". 29 Hence digest does not even come close to working. 30 - Need to add support to gskhttpheader-output.c 31 - Need support in url-transfer-http (for client-side) 32 - Need support in GskHttpContent (for server-side) 33- missing HTTP headers: 34 Vary: * 35 Cache-Expires: Thu, 24 Mar 2005 13:11:58 GMT 36 Vary: Accept-Encoding, User-Agent 37 Via: 1.1 siterl10 (Redline Networks Web I/O Processor - T|X 3.2.18 0) 38 Expires: now 39 Expires: -1 40 Expires: 0 41 Content-Location: http://foo.com 42 Compression-Control: whitespace 43 Keep-Alive: 44 Proxy-Connection: 45- need list of commmon extensions that we don't want to be warned 46 about: P3P, MicrosoftOfficeWebServer, Page-Completion-Status, 47 IISExport, test, MS-Author-Via 48 49 50- split gskrbtreemacros subparts into gsktreemacros. 51 the trick is that gsk_tree_insert() needs hooks to 52 implement gsk_rbtree_insert(); likewise 53 for "remove". otherwise, all other methods don't use the redness, 54 hence gsk_tree_XXX and gsk_rbtree_XXX are equivalent. 55- gsk_tree_replace_node() [and rbtree variant] 56 57- url_check_is_valid() needs conformance review 58- url_check_is_valid() must be called in all the constructor-pathways: 59 gsk_url_new(), gsk_url_new_relative(), gsk_url_new_from_pieces(); 60 probably need a gsk_url_new_from_pieces_check() that 61 does this, since the non-_check version doesn't return an error. 62- caused a warning: (but aren't probably worth fixing) 63 From: NEWSWEB08 64 P3P: policyref="http://www.lycos.com/w3c/p3p.xml", CP="IDC DSP COR CURa ADMa DEVa CUSa PSAa IVAa CONo OUR IND UNI STA" 65 PICS-Label: (PICS-1.0 "http://www.rsac.org/ratingsv01.html" l on "2003.09.02T11:37-0700" exp "2004.09.02T12:00-0700" r (v 0 s 0 n 0 l 0)) 66 P3P: CP="BUS CUR CONo FIN IVDo ONL OUR PHY SAMo TELo" 67- the malformed HTTP header flag: 68 Content-Type: text/html; charset!UTF-8 69 causes the parser to hang. 70- apparently, http headers can be continued on the next line, 71 if the next line starts with whitespace! 72 this needs fixing in gskhttpserver.c, gskhttpclient.c 73 and gskhttpheader-input.c. 74 75Someday: 76- GskHttpClientCache, to take advantage of Keep-Alive transparently. 77 XXX: instead integrate into GskUrlTransferHttp 78- MAIL support [IMAP and POP3/4 etc] [client first, then server] 79- RFC compliance sections in the docs would be awesome. 80 81need full test code: 82- GskHook basics [test all macros and basic interactions] 83- GskMemory tests [test hooking memory sources together] 84- GskHttpHeader tests: [test TEXT->PARSED->TEXT->PARSED->TEXT expectations] 85 [see test-http-header for beginnings] 86- GskHook recursion tests [test various reentrance conditions] 87- see the 'coverage' file output by utils/get-coverage. 88- test code for gskxmlrpcstream 89