Commit Graph

301 Commits

Author SHA1 Message Date
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
Eli Barzilay
f7c67b49a4 Big newline at EOF scan. 2012-02-29 00:28:11 -05:00
Matthew Flatt
b656219f8a net/smtp: fix auth encoding to not add extra CRLFs
Closes PR 12501
2012-02-21 06:14:44 -07:00
Matthew Flatt
a12f9831a3 add optional newline argument to `base64-encode' 2012-02-21 06:14:44 -07:00
Eli Barzilay
999e481785 Fix apparent bug.
In the new-ish code for following redirections, the `strings' argument
wasn't passed along as it did before.
2012-02-01 21:51:47 -05:00