From b5a3b0736e5c9388b4979a05136aba4c833e902d Mon Sep 17 00:00:00 2001 From: hobbs Date: Fri, 19 Nov 1999 06:33:58 +0000 Subject: * doc/scan.n: * tests/scan.test: * generic/tclScan.c: finished support for inline scan by supporting XPG identifiers. * doc/http.n: * library/http2.1/http.tcl: added register and unregister commands to http:: package (better support for tls/SSL), as well as -type argument to http::geturl. [RFE: 2617] * doc/glob.n: added note about ..../ glob behavior on Win9* * doc/tcltest.n: fixed minor example errors [Bug: 3551] --- doc/format.n | 4 ++-- doc/glob.n | 5 +++-- doc/http.n | 36 +++++++++++++++++++++++++++++++++--- doc/scan.n | 39 +++++++++++++++++++++++++-------------- doc/tcltest.n | 6 +++--- 5 files changed, 66 insertions(+), 24 deletions(-) diff --git a/doc/format.n b/doc/format.n index 9f737e0..b22cef8 100644 --- a/doc/format.n +++ b/doc/format.n @@ -5,10 +5,10 @@ '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" -'\" RCS: @(#) $Id: format.n,v 1.3 1999/04/16 00:46:34 stanton Exp $ +'\" RCS: @(#) $Id: format.n,v 1.4 1999/11/19 06:33:58 hobbs Exp $ '\" .so man.macros -.TH format n "" Tcl "Tcl Built-In Commands" +.TH format n 8.1 Tcl "Tcl Built-In Commands" .BS '\" Note: do not modify the .SH NAME line immediately below! .SH NAME diff --git a/doc/glob.n b/doc/glob.n index 7857868..d83d8fe 100644 --- a/doc/glob.n +++ b/doc/glob.n @@ -5,7 +5,7 @@ '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" -'\" RCS: @(#) $Id: glob.n,v 1.4 1999/08/21 19:40:48 hobbs Exp $ +'\" RCS: @(#) $Id: glob.n,v 1.5 1999/11/19 06:33:58 hobbs Exp $ '\" .so man.macros .TH glob n 8.1 Tcl "Tcl Built-In Commands" @@ -86,7 +86,8 @@ may not contain ?, *, or [] constructs. On Windows NT, if \fIpattern\fR is of the form ``\fB~\fIusername\fB@\fIdomain\fR'' it refers to the home directory of the user whose account information resides on the specified NT domain server. Otherwise, user account information is obtained from -the local computer. +the local computer. On Windows 95 and 98, \fBglob\fR accepts patterns +like ``.../'' and ``..../'' for successively higher up parent directories. .VE .SH KEYWORDS diff --git a/doc/http.n b/doc/http.n index fb27087..1d79417 100644 --- a/doc/http.n +++ b/doc/http.n @@ -5,10 +5,10 @@ '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" -'\" RCS: @(#) $Id: http.n,v 1.5 1999/07/20 00:11:52 hershey Exp $ +'\" RCS: @(#) $Id: http.n,v 1.6 1999/11/19 06:33:59 hobbs Exp $ '\" .so man.macros -.TH "Http" n 8.0 Tcl "Tcl Built-In Commands" +.TH "Http" n 8.3 Tcl "Tcl Built-In Commands" .BS '\" Note: do not modify the .SH NAME line immediately below! .SH NAME @@ -35,6 +35,10 @@ Http \- Client-side implementation of the HTTP/1.0 protocol. \fB::http::data \fItoken\fR .sp \fB::http::cleanup \fItoken\fR +.sp +\fB::http::register \fIproto port command\fR +.sp +\fB::http::unregister \fIproto\fR .BE .SH DESCRIPTION @@ -44,7 +48,9 @@ protocol. The package implements the GET, POST, and HEAD operations of HTTP/1.0. It allows configuration of a proxy host to get through firewalls. The package is compatible with the \fBSafesock\fR security policy, so it can be used by untrusted applets to do URL fetching from -a restricted set of hosts. +a restricted set of hosts. This package can be extened to support +additional HTTP transport protocols, such as HTTPS, by providing +a custom \fBsocket\fR command, via \fBhttp::register\fR. .PP The \fB::http::geturl\fR procedure does a HTTP transaction. Its \fIoptions \fR determine whether a GET, POST, or HEAD transaction @@ -207,6 +213,11 @@ the \fB-command\fP callback, if specified. The return value of \fB::http::status\fP is \fBtimeout\fP after a timeout has occurred. .TP +\fB\-type\fP \fImime-type\fP +Use \fImime-type\fR as the \fBContent-Type\fR value, instead of the +default value (\fBapplication/x-www-form-urlencoded\fR) during a +POST operation. +.TP \fB\-validate\fP \fIboolean\fP If \fIboolean\fR is non-zero, then \fB::http::geturl\fR does an HTTP HEAD request. This request returns meta information about the URL, but the @@ -252,6 +263,25 @@ This procedure cleans up the state associated with the connection identified by \fItoken\fP. After this call, the procedures like \fB::http::data\fP cannot be used to get information about the operation. +.TP +\fB::http::register\fP \fIproto port command\fP +This procedure allows one to provide custom HTTP transport types +such as HTTPS, by registering a prefix, the default port, and the +command to execute to create the Tcl \fBchannel\fR. E.g.: +.RS +.CS +package require http +package require tls + +http::register https 443 ::tls::socket + +set token [http::geturl https://my.secure.site/] +.CE +.RE +.TP +\fB::http::unregister\fP \fIproto\fP +This procedure unregisters a protocol handler that was previously +registered via \fBhttp::register\fR. .SH "STATE ARRAY" The \fB::http::geturl\fR procedure returns a \fItoken\fR that can be used to diff --git a/doc/scan.n b/doc/scan.n index 123ec5b..b9ed0be 100644 --- a/doc/scan.n +++ b/doc/scan.n @@ -5,10 +5,10 @@ '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" -'\" RCS: @(#) $Id: scan.n,v 1.3 1999/04/16 00:46:36 stanton Exp $ +'\" RCS: @(#) $Id: scan.n,v 1.4 1999/11/19 06:33:59 hobbs Exp $ '\" .so man.macros -.TH scan n "" Tcl "Tcl Built-In Commands" +.TH scan n 8.3 Tcl "Tcl Built-In Commands" .BS '\" Note: do not modify the .SH NAME line immediately below! .SH NAME @@ -19,15 +19,21 @@ scan \- Parse string using conversion specifiers in the style of sscanf .SH INTRODUCTION .PP -This command parses fields from an input string in the same fashion -as the ANSI C \fBsscanf\fR procedure and returns a count of the number -of conversions performed, or -1 if the end of the input string is -reached before any conversions have been performed. -\fIString\fR gives the input to be parsed and \fIformat\fR indicates -how to parse it, using \fB%\fR conversion specifiers as in \fBsscanf\fR. -Each \fIvarName\fR gives the name of a variable; when a field is -scanned from \fIstring\fR the result is converted back into a string -and assigned to the corresponding variable. +This command parses fields from an input string in the same fashion as the +ANSI C \fBsscanf\fR procedure and returns a count of the number of +conversions performed, or -1 if the end of the input string is reached +before any conversions have been performed. \fIString\fR gives the input +to be parsed and \fIformat\fR indicates how to parse it, using \fB%\fR +conversion specifiers as in \fBsscanf\fR. Each \fIvarName\fR gives the +name of a variable; when a field is scanned from \fIstring\fR the result is +converted back into a string and assigned to the corresponding variable. +.VS 8.3 +If no \fIvarName\fR variables are specified, then \fBscan\fR works in an +inline manner, returning the data that would otherwise be stored in the +variables as a list. In the inline case, an empty string is returned when +the end of the input string is reached before any conversions have been +performed. +.VE 8.3 .SH "DETAILS ON SCANNING" .PP @@ -63,7 +69,8 @@ by the number, where 1 corresponds to the first \fIvarName\fR. If there are any positional specifiers in \fIformat\fR then all of the specifiers must be positional. Every \fIvarName\fR on the argument list must correspond to exactly one conversion specifier or an error -is generated. +is generated, or in the inline case, any position can be specified +at most once and the empty positions will be filled in with empty strings. .VE 8.1 .PP The following conversion characters are supported: @@ -163,8 +170,7 @@ The behavior of the \fBscan\fR command is the same as the behavior of the ANSI C \fBsscanf\fR procedure except for the following differences: .VS 8.1 .IP [1] -\fB%p\fR conversion specifier is not currently -supported. +\fB%p\fR conversion specifier is not currently supported. .VE 8.1 .IP [2] For \fB%c\fR conversions a single character value is @@ -177,6 +183,11 @@ values are always converted as if there were no modifier present and real values are always converted as if the \fBl\fR modifier were present (i.e. type \fBdouble\fR is used for the internal representation). +.VS 8.3 +.IP [4] +If the end of the input string is reached before any conversions have been +performed and no variables are given, and empty string is returned. +.VE 8.3 .SH KEYWORDS conversion specifier, parse, scan diff --git a/doc/tcltest.n b/doc/tcltest.n index 56f10a8..7eda973 100644 --- a/doc/tcltest.n +++ b/doc/tcltest.n @@ -6,7 +6,7 @@ '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" -'\" RCS: @(#) $Id: tcltest.n,v 1.7 1999/10/19 18:08:40 jenn Exp $ +'\" RCS: @(#) $Id: tcltest.n,v 1.8 1999/11/19 06:34:00 hobbs Exp $ '\" .so man.macros .TH "Tcltest" n 8.2 Tcl "Tcl Built-In Commands" @@ -714,7 +714,7 @@ A simple test file (foo.test) .DS if {[lsearch [namespace children] ::tcltest] == -1} { package require tcltest - import namespace ::tcltest::* + namespace import ::tcltest::* } test foo-1.1 {save 1 in variable name foo} {} { @@ -729,7 +729,7 @@ A simple all.tcl .DS if {[lsearch [namespace children] ::tcltest] == -1} { package require tcltest - import namespace ::tcltest::* + namespace import ::tcltest::* } set ::tcltest::testSingleFile false -- cgit v0.12