From: ori@eigenstate.org
To: julien@typed-hole.org
To: 9front@9front.org
Subject: Re: [9front] [PATCH] Update hpost to use -r header like hget
Date: Tue, 15 Dec 2020 10:42:37 -0800 [thread overview]
Message-ID: <EEE2530F13BFE807311AEE3CD02AA3CD@eigenstate.org> (raw)
In-Reply-To: <5bae97d5-c808-7faf-c0f3-2dfcdfabbfa1@typed-hole.org>
Quoth Julien Blanchard <julien@typed-hole.org>:
> Hello,
> This is a small update to hpost which allows the use of a -r header
> option just like in hget. I had the need when trying to push a file to
> an API which also needed an authorization header.
> It's the first time I write some not trivial rc script so maybe there is
> a better way to add this option. After quite some testing it looks like
> it works at least :)
Thanks for the patch. just a few revisions:
>
> Cheers,
> julienxx
>
>
>
> diff -r ac35c963f8e2 rc/bin/hpost
> --- a/rc/bin/hpost Sun Dec 13 20:23:03 2020 +0100
> +++ b/rc/bin/hpost Tue Dec 15 17:45:26 2020 +0000
> @@ -1,12 +1,13 @@
> #!/bin/rc
> rfork e
> url=()
> +header=()
unrelated to your change, but while we're here:
if you could also set action=()/method=(), that
would prevent them from leaking in through the
environment.
> 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 +15,7 @@
> switch($1){
> case -l; l=($l $1)
> case -u; shift; url=$1
> + case -r; shift; header=$1
This only supports one header. hget allows repeated
-r flags to add multiple headers:
hget -r foo -r bar
The change for multiple headers should be as simple
as one change here:
headers=($headers $1)
> + if not
> + hget=(hget -r $header $l)
And one here here:
-r^$headers
which will distribute -r across all of the
entries in the headers list.
As a reminder: in rc,
foo_^(x y z)
expands to:
foo_x foo_y foo_z
next prev parent reply other threads:[~2020-12-15 18:43 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 [this message]
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
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=EEE2530F13BFE807311AEE3CD02AA3CD@eigenstate.org \
--to=ori@eigenstate.org \
--cc=9front@9front.org \
--cc=julien@typed-hole.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).