[OE-core] [PATCH] scripts/oe-buildenv-internal: Add SOCKS5_{USER, PASSWD} to BB_ENV_EXTRAWHITE
Kumar Gala
galak at kernel.crashing.org
Wed Aug 31 05:06:29 UTC 2011
On Jul 28, 2011, at 8:10 AM, Kumar Gala wrote:
> If a SOCKS5 gateway is needed for a proxy access like git it might also
> require authentication to the proxy via a password and username. Adding
> SOCKS5_USER & SOCKS5_PASSWD to BB_ENV_EXTRAWHITE allow for automation
> of the authentication request to occur when something like a git fetch
> is going through the proxy.
>
> Signed-off-by: Kumar Gala <galak at kernel.crashing.org>
> ---
> * Fixes issue with a git fetch request failing to get pass a firewall
>
> scripts/oe-buildenv-internal | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/scripts/oe-buildenv-internal b/scripts/oe-buildenv-internal
> index c13fc40..b223292 100755
> --- a/scripts/oe-buildenv-internal
> +++ b/scripts/oe-buildenv-internal
> @@ -55,4 +55,4 @@ unset BITBAKEDIR
> export BUILDDIR
> export PATH
>
> -export BB_ENV_EXTRAWHITE="MACHINE DISTRO TCMODE TCLIBC http_proxy ftp_proxy https_proxy all_proxy ALL_PROXY no_proxy SSH_AGENT_PID SSH_AUTH_SOCK BB_SRCREV_POLICY SDKMACHINE BB_NUMBER_THREADS PARALLEL_MAKE GIT_PROXY_COMMAND"
> +export BB_ENV_EXTRAWHITE="MACHINE DISTRO TCMODE TCLIBC http_proxy ftp_proxy https_proxy all_proxy ALL_PROXY no_proxy SSH_AGENT_PID SSH_AUTH_SOCK BB_SRCREV_POLICY SDKMACHINE BB_NUMBER_THREADS PARALLEL_MAKE GIT_PROXY_COMMAND SOCKS5_PASSWD SOCSK5_USER"
> --
> 1.7.3.4
Richard,
I'm able reproduce this, with out my patch I get prompted for a socks password, w/it having SOCKS5_PASSWD set in my environment the git clone is able to succeed.
So from our discussion a while back on IRC:
Aug 11 10:54:20 <RP__> galak: Well, it will but it will only place it in the internal data store
Aug 11 10:54:42 <RP__> galak: there isn't anything to say "also export this from the data store into the environment that bitbake uses"
From the way I read bitbake/lib/bb/utils.py:
def approved_variables():
"""
Determine and return the list of whitelisted variables which are approved
to remain in the environment.
"""
...
[ this will add SOCKS5_PASSWD to the 'approved' list ]
and
def filter_environment(good_vars):
[ will not skip unsetting it from the environment since its in the 'approved' list ]
That seems to explain how this ends up working.
So question is what else needs to be done to get this accepted ?
- k
More information about the Openembedded-core
mailing list