Commit Graph

305 Commits

Author SHA1 Message Date
Asumu Takikawa
d4927e917b Fix old style contracts 2013-04-16 10:52:55 -04:00
Asumu Takikawa
7d4b162181 Fix imap-list-child-mailboxes to match contract
Closes PR 13658
2013-04-16 10:52:55 -04:00
Asumu Takikawa
c7d878c009 Fix parsing when CNAME is provided for MX query
The code was assuming that the record type was
MX even though this could be false. Also adjusted
some code to also make it easier to test.

Note: the behavior when MX records are missing
is probably still not right.

Closes PR 13654
2013-04-16 10:52:55 -04:00
Matthew Flatt
50ade25b28 net/url: support HTTP/1.1 connections 2013-04-15 06:21:49 -06:00
Asumu Takikawa
5735d37794 Use any/c for the ip-address-string? domain
Previously, it was `string?` which is needlessly
restrictive and caused premature contract failures.

Please merge into 5.3.4
2013-04-08 11:18:57 -04:00
Eli Barzilay
6149134011 Misc improvements to net/dns' and net/private/ip'.
* Some racketisms.

* Use explicit `in-list' etc in for loops.

* Remove some redundant requires from `net/dns'.

* Move all tests to `tests/net', including a new `tests/net/ip'.  In the
  future there's a plan to have things like stripped zos etc for
  distribution, but we're not there yet, and the net collection is
  already organized nicely so this also makes it more uniform.

* Include the dns tests in the main test file.
2013-04-05 02:23:43 -04:00
Asumu Takikawa
8483a1493f Fix the returned type of dns-get-mail-exchanger. 2013-04-04 16:11:28 -04:00
Asumu Takikawa
02989b23a1 Fix ipv4 check on addresses with a leading 0 2013-04-04 14:03:23 -04:00
Asumu Takikawa
0b55cf3df2 Refine contract check 2013-04-04 14:03:23 -04:00
Asumu Takikawa
e62bb05f05 Fix equality check 2013-04-04 14:03:23 -04:00
Asumu Takikawa
f904bd8ba5 Make IP addresses immutable 2013-04-04 14:03:23 -04:00
Asumu Takikawa
92102a2f07 Use net/private/ip in net/dns
This simplifies the code by outsourcing IP
address functionality to net/private/ip.
2013-04-04 13:05:56 -04:00
Asumu Takikawa
4e76ae8c11 Add an IP address library
The library currently lives in a private subfolder so
that the interface can still be changed. The idea is to
eventually make it a top-level `net` library once it is
more mature.
2013-04-04 13:05:56 -04:00
Asumu Takikawa
de99fdb867 Fix identifier typo 2013-03-09 17:13:59 -05:00
Jay McCarthy
6bf03c1244 Extending cookie support with expiration
Providing access to paths on id-cookies

Change PNR to limit checksum updating unless forced
2013-03-07 10:21:03 -07:00
Asumu Takikawa
312792ac4d Set the socket protocol family
Allows the use of an IPv6 nameserver
2013-03-02 13:36:34 -05:00
Asumu Takikawa
3ab83001b4 Support reverse lookups with IPv6 addresses 2013-03-02 14:26:28 -05:00
Asumu Takikawa
cf4c71a51f Shorten IPv6 addresses for display 2013-03-02 14:26:28 -05:00
Asumu Takikawa
c2e8ef30e4 Support querying AAAA records for IPv6 2013-03-02 14:26:27 -05:00
Asumu Takikawa
621fc2b256 Start to add internal documentation 2013-03-02 14:09:30 -05:00
Asumu Takikawa
50cd4645c1 Another small contract fix 2013-03-01 16:22:36 -05:00
Asumu Takikawa
14c77c39d2 Fix net/dns contracts 2013-03-01 00:48:11 -05:00
Asumu Takikawa
9d08d69d07 Add contracts to net/dns functions. 2013-03-01 00:05:40 -05:00
Eli Barzilay
46894e0cc6 Improve comment. 2013-02-19 00:22:47 -05:00
Matthew Flatt
f1b4c86519 net/ftp: put temp file for download in directory of destination 2013-02-14 13:03:58 -07:00
Jay McCarthy
921456f3ad Fixing PR13374 2012-12-17 16:28:46 -07:00
Matthew Flatt
b8b8260379 net/url: add `current-url-encode-mode'
Changing `current-url-encode-mode' from 'recommended to 'unreserved
causes `url->string' to encode !, *, ', (, and ) using %, which
can avoid confusing some parsers.

See also https://github.com/plt/racket/pull/198
2012-12-17 06:56:38 -07:00
Matthew Flatt
3d1f1289ef net/uri-codec: added `uri-path-segment-unreserved-encode' 2012-12-17 06:32:59 -07:00
Chen Xiao
a04ae51f64 A tiny bug in documents of ftp 2012-12-17 05:45:40 -07:00
Matthew Flatt
e0de33a005 net/ftp: make progress proc keyword, change progress protocol
The revised protocol for a progress procedure doesn't create
the thread automatically, and it provides an event to indicate
when the progress count changes.
2012-12-13 07:45:26 -07:00
Chenxiao
4cc287f7e5 Improve ftp client. Add upload, progress monitor and something else. 2012-12-13 07:09:04 -07:00
Philippe Mechai
d8ff661118 path->url: ensure directory paths have a trailing slash
If a path to a directory is converted to an URL it loses
           its trailing path separator.
           This can lead to a bug if the URL is used as a base URL to
           build other URLs (e.g. combine-url/relative).
2012-11-27 08:46:34 -07:00
Matthew Flatt
e4e4d544f5 net/imap: log to an 'imap logger 2012-11-23 18:44:51 -07:00
Eli Barzilay
586b323430 #lang racket' -> #lang racket/base' conversions in net/websocket. 2012-11-07 08:03:46 -05:00
Eli Barzilay
14d8c8b5a5 Newlines at EOFs. 2012-11-06 14:07:15 -05:00
Danny Yoo
dcf4d8b040 adding close-eval at the end of scribble files that have a toplevel evaluator 2012-11-01 15:32:53 -06:00
John Clements
1f02a0a8b8 exposed mapping for unreserved characters 2012-11-01 12:38:09 -07:00
Marc Burns
25bc661a03 Fix socket leak on redirected `*-pure-port' calls.
A port over which a redirection is served to get-pure-port is not closed
if `get-pure-port' follows the redirection.  This leaks file descriptors
on the host machine.
2012-10-05 11:14:38 -04:00
Matthew Flatt
3fb42cf3f1 scribble/html-properties: allow URLs in css-addition' and js-addition' 2012-09-11 18:52:59 -06:00
Jay McCarthy
a1e855a035 adding an optional argument to get-pure-port/headers 2012-08-16 14:47:09 -06:00
Jay McCarthy
23226b41da Preserve scheme, user, host, and port if the redirection doesn't have them 2012-08-14 21:34:02 -06:00
Jay McCarthy
f2e0e0bfeb get-port-port/headers should not remove status line 2012-08-14 21:34:01 -06:00
Matthew Flatt
c747af21e3 move commented-out tests to `test' submodule 2012-07-15 10:32:33 -06:00
Eli Barzilay
17090fca4f A bunch of fprintf' -> eprintf' conversions (and a few related things). 2012-05-06 12:06:00 -04:00
Robby Findler
f5449f38e8 adjust url-exception so it recognizes the same exceptions it used to 2012-04-01 22:16:35 -05:00
Robby Findler
97b76d474e some cleanups, thanks to Eli 2012-03-30 10:44:42 -05:00
Robby Findler
86572cc8c3 adjust the contract on string->url so that it actually catches all of
the errors that would be signalled by the body. also, remove
url-regexp from the exports (it was only recently added)

I believe this eliminates two of Eli's concerns:

  - the contract is no longer so painful to read

  - the performance is more reasonable.

Specifically, for the performance, here are the times I see to call
string->url on "http://www.racket-lang.org":

no contract: any/c
cpu time: 564 real time: 566 gc time: 3

weak contract: (-> (or/c string? bytes?) url?)
cpu time: 590 real time: 590 gc time: 3

strong, regexp-based contract:
(-> (or/c (not/c #rx"^([^:/?#]*):") #rx"^[a-zA-Z][a-zA-Z0-9+.-]*:") url?)
cpu time: 632 real time: 633 gc time: 5

This appears to be about a 10% slowdown for the regexp-based contract
over the weaker contract.

related to PR 12652
2012-03-29 19:31:32 -05:00
Robby Findler
fdf3fa6492 apply Andy's diff (and adjust the documentation correspondingly)
closes PR 12652
2012-03-27 12:21:17 -05:00
Eli Barzilay
818e434c60 Remove no-longer used net/cgi exceptions. 2012-03-16 02:55:35 -04:00
Matthew Flatt
537f194c4e net/imap: add TLS support
Based on a patch from Thomas Spurden
2012-03-10 10:47:22 -07:00