[OE-core] [PATCH] scripts/oe-buildenv-internal: Add SOCKS5_{USER, PASSWD} to BB_ENV_EXTRAWHITE

Richard Purdie richard.purdie at linuxfoundation.org
Wed Sep 7 17:04:01 UTC 2011


On Wed, 2011-08-31 at 00:06 -0500, Kumar Gala wrote:
> 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 ?

To put this simply, this patch shouldn't work. The fact that it does
worried me and there is a bitbake bug. You can do something like this:

BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE FOO" FOO=1 bitbake quilt-native -c devshell

and see FOO=1 in the shell. It should only do that if the metadata also
does "export FOO" which it does not.

So, no, this patch isn't right and we'll need to actually export the
variables once I fix the above bug.

Cheers,

Richard






More information about the Openembedded-core mailing list