Hm, curl loads URLs in the form http://user:password@server/path just fine for me (and ptxd_make_get() doesn't seem to strip that part, so I guess it should also be usable in the Makefiles). The only disadvantage in that case is that the username cannot contain a colon, but neither can it in your implementation :) So I would change it to take a separate "user" and "password" parameter in order to enhance the usefullness of this option.
- Roland On 07.01.2017 22:58, Ladislav Michl wrote: > Hi there, > > I need to pass username and password to download mercurial snapshot from > server, so something like this now works: > package_URL := > https://mercurial.site.com/hg/package/archive/$(package_VERSION).$(package_SUFFIX);user=<username>:<password> > > Is it acceptable to support it in upstream PTXdist? > (it could be probably rewritten some nicer way, but I'm not too good at shell > scripting) > > ladis > > diff --git a/scripts/lib/ptxd_make_get.sh b/scripts/lib/ptxd_make_get.sh > index 2bac97817..e392e8b0c 100644 > --- a/scripts/lib/ptxd_make_get.sh > +++ b/scripts/lib/ptxd_make_get.sh > @@ -25,6 +25,7 @@ ptxd_make_get_http() { > # scan for valid options > # > while [ ${#} -ne 0 ]; do > + local cred > local opt="${1}" > shift > > @@ -45,6 +46,13 @@ ptxd_make_get_http() { > curl_opts[${#curl_opts[@]}]="--cookie" > curl_opts[${#curl_opts[@]}]="${opt#cookie:}" > ;; > + user=*) > + cred="${opt#user=}" > + cred=(${cred//:/ }) > + opts[${#opts[@]}]="--user=${cred[0]}" > + opts[${#opts[@]}]="--password=${cred[1]}" > + curl_opts[${#curl_opts[@]}]="${opt#user=}" > + ;; > *) > ptxd_bailout "invalid option '${opt}' to > ${FUNCNAME}" > ;; > > _______________________________________________ > ptxdist mailing list > ptxdist@pengutronix.de > _______________________________________________ ptxdist mailing list ptxdist@pengutronix.de