9front - general discussion about 9front
 help / color / mirror / Atom feed
From: Julien Blanchard <julien@typed-hole.org>
To: 9front@9front.org
Subject: Re: [9front] [PATCH] Update hpost to use -r header like hget
Date: Thu, 17 Dec 2020 12:23:27 +0100	[thread overview]
Message-ID: <86bfe558-a375-62d0-5116-94f0189b93d9@typed-hole.org> (raw)
In-Reply-To: <C55110C466B0B1F9602913AF3AC8CB30@musolino.id.au>

On 17/12/2020 11:30, Alex Musolino wrote:
>>    fn usage {
>> -	echo 'usage: hpost [ -l ] [ -[gpm] action ] [ -u ] url [ field:value |
>> field@file ... ]' >[1=2]
>> +	echo 'usage: hpost [ -l ] [ -[gpm] action ] [ -r ] headers [ -u ] url
>> [ field:value | field@file ... ]' >[1=2]
>>    	exit usage
>>    }
> 
> I think this bit should be:
> 
>    fn usage {
> -	echo 'usage: hpost [ -l ] [ -[gpm] action ] [ -u ] url [ field:value |
> field@file ... ]' >[1=2]
> +	echo 'usage: hpost [ -l ] [ -[gpm] action ] [ -r header ] [ -u ] url
> [ field:value | field@file ... ]' >[1=2]
>    	exit usage
>    }
> 
> This matches the man page and the usage string from hget(1).  Also, it
> wouldn't hurt to amend the man page to mention that the -r option can
> be repeated.
> 

Good idea, here's the updated diff:


diff -r ac35c963f8e2 rc/bin/hpost
--- a/rc/bin/hpost	Sun Dec 13 20:23:03 2020 +0100
+++ b/rc/bin/hpost	Thu Dec 17 11:21:32 2020 +0000
@@ -1,12 +1,15 @@
  #!/bin/rc
  rfork e
  url=()
+headers=()
+action=()
+method=()
  at=()	# text fields
  af=()	# file fields
  l=()

  fn usage {
-	echo 'usage: hpost [ -l ] [ -[gpm] action ] [ -u ] url [ field:value | 
field@file ... ]' >[1=2]
+	echo 'usage: hpost [ -l ] [ -[gpm] action ] [ -r ] header [ -u ] url [ 
field:value | field@file ... ]' >[1=2]
  	exit usage
  }

@@ -14,6 +17,7 @@
  	switch($1){
  	case -l;	l=($l $1)
  	case -u;	shift; url=$1
+	case -r;	shift; headers=($headers -r $1)
  	case -g;	shift; action=$1; method=mget
  	case -p;	shift; action=$1; method=mpost
  	case -m;	shift; action=$1; method=multi
@@ -94,8 +98,9 @@
  	menc $"f | $hget -r 'Content-Type: multipart/form-data; boundary='$"f 
-b $url -P $action
  }

+
  if(! ~ $action ''){
-	hget=(hget $l)
+	hget=(hget $headers $l)
  	$method
  	exit
  }
diff -r ac35c963f8e2 sys/man/1/hget
--- a/sys/man/1/hget	Sun Dec 13 20:23:03 2020 +0100
+++ b/sys/man/1/hget	Thu Dec 17 11:21:32 2020 +0000
@@ -38,6 +38,9 @@
  .B -m
  .I action
  ] [
+.B -r
+.I header
+] [
  .B -u
  ]
  .I url
@@ -119,6 +122,9 @@
  .B -r
  sends an arbitrary HTTP
  .IR header .
+The
+.B -r
+flag can be repeated to send multiple headers.
  .PP
  Option
  .B -m



  reply	other threads:[~2020-12-17 11:25 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-15 18:02 Julien Blanchard
2020-12-15 18:42 ` ori
2020-12-16 18:16   ` Julien Blanchard
2020-12-16 18:51     ` sirjofri
2020-12-16 19:50       ` ori
2020-12-16 21:34         ` sirjofri
2020-12-16 21:52           ` ori
2020-12-16 22:55             ` sirjofri
2020-12-16 23:13               ` Steve Simon
2020-12-17  9:33                 ` Julien Blanchard
2020-12-17 10:30                   ` Alex Musolino
2020-12-17 11:23                     ` Julien Blanchard [this message]
2020-12-18  4:35                       ` ori
2020-12-16 19:54     ` estevan.cps
2020-12-18  2:25 ` magma698hfsp273p9f

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=86bfe558-a375-62d0-5116-94f0189b93d9@typed-hole.org \
    --to=julien@typed-hole.org \
    --cc=9front@9front.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).