# [BUG] git-2.36.0-rc0 - t6200 fails due to library/path issues

6 messages from 2022-04-06 to 2022-04-06. Participants: rsbecker@nexbridge.com, Ævar Arnfjörð Bjarmason, Junio C Hamano.
Thread: https://gitlist.dev/t/57676

## rsbecker@nexbridge.com, 2022-04-06 11:18

Subject: [BUG] git-2.36.0-rc0 - t6200 fails due to library/path issues
Message-ID: <041601d849a8$1441ce60$3cc56b20$@nexbridge.com>
URL: https://gitlist.dev/e/041601d849a8%241441ce60%243cc56b20%24%40nexbridge.com

```
t6200 makes assumptions that ssh-keygen to be used is located in
/usr/local/bin. This causes problems when we have multiple OpenSSL
installations - which we do - 3 of them. Our environment supplies OpenSSL
1.1 in /usr/local-ssl1.1, with a corresponding version of ssh-agent in a
different directory. There needs to be a mechanism to override the
ssh-keygen so that tests will work in this situation.

*** RLD ERROR ***: Unresolved Text Symbol OPENSSL_add_all_algorithms_noconf
in file /usr/local/bin/ssh-keygen.

*** RLD ERROR ***: Unresolved Text Symbol EVP_MD_CTX_cleanup in file
/usr/local/bin/ssh-keygen.

*** RLD ERROR ***: Unresolved Text Symbol SSLeay in file
/usr/local/bin/ssh-keygen.

*** RLD ERROR ***: Unresolved Text Symbol EVP_MD_block_size in file
/usr/local/bin/ssh-keygen.

*** RLD ERROR ***: Unresolved Text Symbol EVP_MD_CTX_init in file
/usr/local/bin/ssh-keygen.

I do not know why the test is forcing SSH in /usr/local/bin - it is not
something coming from our environment, which has PATH set correctly.

Thanks,
Randall


```

## Ævar Arnfjörð Bjarmason, 2022-04-06 13:51

Subject: Re: [BUG] git-2.36.0-rc0 - t6200 fails due to library/path issues
Message-ID: <220406.867d82e2sr.gmgdl@evledraar.gmail.com>
URL: https://gitlist.dev/e/220406.867d82e2sr.gmgdl%40evledraar.gmail.com
In-Reply-To: <041601d849a8$1441ce60$3cc56b20$@nexbridge.com>

```

On Wed, Apr 06 2022, rsbecker@nexbridge.com wrote:

> t6200 makes assumptions that ssh-keygen to be used is located in
> /usr/local/bin. This causes problems when we have multiple OpenSSL
> installations - which we do - 3 of them. Our environment supplies OpenSSL
> 1.1 in /usr/local-ssl1.1, with a corresponding version of ssh-agent in a
> different directory. There needs to be a mechanism to override the
> ssh-keygen so that tests will work in this situation.
>
> *** RLD ERROR ***: Unresolved Text Symbol OPENSSL_add_all_algorithms_noconf
> in file /usr/local/bin/ssh-keygen.
>
> *** RLD ERROR ***: Unresolved Text Symbol EVP_MD_CTX_cleanup in file
> /usr/local/bin/ssh-keygen.
>
> *** RLD ERROR ***: Unresolved Text Symbol SSLeay in file
> /usr/local/bin/ssh-keygen.
>
> *** RLD ERROR ***: Unresolved Text Symbol EVP_MD_block_size in file
> /usr/local/bin/ssh-keygen.
>
> *** RLD ERROR ***: Unresolved Text Symbol EVP_MD_CTX_init in file
> /usr/local/bin/ssh-keygen.
>
> I do not know why the test is forcing SSH in /usr/local/bin - it is not
> something coming from our environment, which has PATH set correctly.

Is it:

	SANE_TOOL_PATH = /usr/coreutils/bin:/usr/local/bin

In the nonstop section in config.mak.uname along with:
	
	Makefile:ifdef SANE_TOOL_PATH
	Makefile:SANE_TOOL_PATH_SQ = $(subst ','\'',$(SANE_TOOL_PATH))
	Makefile:BROKEN_PATH_FIX = 's|^\# @@BROKEN_PATH_FIX@@$$|git_broken_path_fix "$(SANE_TOOL_PATH_SQ)"|'
	Makefile:PATH := $(SANE_TOOL_PATH):${PATH}
	Makefile-else
	Makefile-BROKEN_PATH_FIX = '/^\# @@BROKEN_PATH_FIX@@$$/d'
	Makefile-endif
	
?

```

## rsbecker@nexbridge.com, 2022-04-06 15:32

Subject: RE: [BUG] git-2.36.0-rc0 - t6200 fails due to library/path issues
Message-ID: <044f01d849cb$93d3a720$bb7af560$@nexbridge.com>
URL: https://gitlist.dev/e/044f01d849cb%2493d3a720%24bb7af560%24%40nexbridge.com
In-Reply-To: <220406.867d82e2sr.gmgdl@evledraar.gmail.com>

```
On April 6, 2022 9:52 AM, Ævar Arnfjörð Bjarmason wrote:
>On Wed, Apr 06 2022, rsbecker@nexbridge.com wrote:
>
>> t6200 makes assumptions that ssh-keygen to be used is located in
>> /usr/local/bin. This causes problems when we have multiple OpenSSL
>> installations - which we do - 3 of them. Our environment supplies
>> OpenSSL
>> 1.1 in /usr/local-ssl1.1, with a corresponding version of ssh-agent in
>> a different directory. There needs to be a mechanism to override the
>> ssh-keygen so that tests will work in this situation.
>>
>> *** RLD ERROR ***: Unresolved Text Symbol
>> OPENSSL_add_all_algorithms_noconf in file /usr/local/bin/ssh-keygen.
>>
>> *** RLD ERROR ***: Unresolved Text Symbol EVP_MD_CTX_cleanup in file
>> /usr/local/bin/ssh-keygen.
>>
>> *** RLD ERROR ***: Unresolved Text Symbol SSLeay in file
>> /usr/local/bin/ssh-keygen.
>>
>> *** RLD ERROR ***: Unresolved Text Symbol EVP_MD_block_size in file
>> /usr/local/bin/ssh-keygen.
>>
>> *** RLD ERROR ***: Unresolved Text Symbol EVP_MD_CTX_init in file
>> /usr/local/bin/ssh-keygen.
>>
>> I do not know why the test is forcing SSH in /usr/local/bin - it is
>> not something coming from our environment, which has PATH set correctly.
>
>Is it:
>
>	SANE_TOOL_PATH = /usr/coreutils/bin:/usr/local/bin
>
>In the nonstop section in config.mak.uname along with:
>
>	Makefile:ifdef SANE_TOOL_PATH
>	Makefile:SANE_TOOL_PATH_SQ = $(subst ','\'',$(SANE_TOOL_PATH))
>	Makefile:BROKEN_PATH_FIX = 's|^\#
>@@BROKEN_PATH_FIX@@$$|git_broken_path_fix "$(SANE_TOOL_PATH_SQ)"|'
>	Makefile:PATH := $(SANE_TOOL_PATH):${PATH}
>	Makefile-else
>	Makefile-BROKEN_PATH_FIX = '/^\# @@BROKEN_PATH_FIX@@$$/d'
>	Makefile-endif
>
>?

OIC. Can I change the PATH value when running the tests without changing config.mak.uname?


```

## rsbecker@nexbridge.com, 2022-04-06 15:38

Subject: RE: [BUG] git-2.36.0-rc0 - t6200 fails due to library/path issues
Message-ID: <045501d849cc$5e2c30a0$1a8491e0$@nexbridge.com>
URL: https://gitlist.dev/e/045501d849cc%245e2c30a0%241a8491e0%24%40nexbridge.com
In-Reply-To: <220406.867d82e2sr.gmgdl@evledraar.gmail.com>

```
On April 6, 2022 9:52 AM, Ævar Arnfjörð Bjarmason wrote:
>On Wed, Apr 06 2022, rsbecker@nexbridge.com wrote:
>
>> t6200 makes assumptions that ssh-keygen to be used is located in
>> /usr/local/bin. This causes problems when we have multiple OpenSSL
>> installations - which we do - 3 of them. Our environment supplies
>> OpenSSL
>> 1.1 in /usr/local-ssl1.1, with a corresponding version of ssh-agent in
>> a different directory. There needs to be a mechanism to override the
>> ssh-keygen so that tests will work in this situation.
>>
>> *** RLD ERROR ***: Unresolved Text Symbol
>> OPENSSL_add_all_algorithms_noconf in file /usr/local/bin/ssh-keygen.
>>
>> *** RLD ERROR ***: Unresolved Text Symbol EVP_MD_CTX_cleanup in file
>> /usr/local/bin/ssh-keygen.
>>
>> *** RLD ERROR ***: Unresolved Text Symbol SSLeay in file
>> /usr/local/bin/ssh-keygen.
>>
>> *** RLD ERROR ***: Unresolved Text Symbol EVP_MD_block_size in file
>> /usr/local/bin/ssh-keygen.
>>
>> *** RLD ERROR ***: Unresolved Text Symbol EVP_MD_CTX_init in file
>> /usr/local/bin/ssh-keygen.
>>
>> I do not know why the test is forcing SSH in /usr/local/bin - it is
>> not something coming from our environment, which has PATH set correctly.
>
>Is it:
>
>	SANE_TOOL_PATH = /usr/coreutils/bin:/usr/local/bin
>
>In the nonstop section in config.mak.uname along with:
>
>	Makefile:ifdef SANE_TOOL_PATH
>	Makefile:SANE_TOOL_PATH_SQ = $(subst ','\'',$(SANE_TOOL_PATH))
>	Makefile:BROKEN_PATH_FIX = 's|^\#
>@@BROKEN_PATH_FIX@@$$|git_broken_path_fix "$(SANE_TOOL_PATH_SQ)"|'
>	Makefile:PATH := $(SANE_TOOL_PATH):${PATH}
>	Makefile-else
>	Makefile-BROKEN_PATH_FIX = '/^\# @@BROKEN_PATH_FIX@@$$/d'
>	Makefile-endif
>
>?

I should also point out that we have not previously had path problems like this (2.35.1 and before going back years).


```

## rsbecker@nexbridge.com, 2022-04-06 18:12

Subject: RE: [BUG] git-2.36.0-rc0 - t6200 fails due to library/path issues
Message-ID: <047101d849e1$d965b420$8c311c60$@nexbridge.com>
URL: https://gitlist.dev/e/047101d849e1%24d965b420%248c311c60%24%40nexbridge.com
In-Reply-To: <xmqq35iqyuvb.fsf@gitster.g>

```
On April 6, 2022 1:39 PM, Junio C Hamano wrote:
><rsbecker@nexbridge.com> writes:
>
>> t6200 makes assumptions that ssh-keygen to be used is located in
>> /usr/local/bin. This causes problems when we have multiple OpenSSL
>> installations - which we do - 3 of them. Our environment supplies
>> OpenSSL
>> 1.1 in /usr/local-ssl1.1, with a corresponding version of ssh-agent in
>> a different directory. There needs to be a mechanism to override the
>> ssh-keygen so that tests will work in this situation.
>>
>> *** RLD ERROR ***: Unresolved Text Symbol
>> OPENSSL_add_all_algorithms_noconf in file /usr/local/bin/ssh-keygen.
>>
>> *** RLD ERROR ***: Unresolved Text Symbol EVP_MD_CTX_cleanup in file
>> /usr/local/bin/ssh-keygen.
>>
>> *** RLD ERROR ***: Unresolved Text Symbol SSLeay in file
>> /usr/local/bin/ssh-keygen.
>>
>> *** RLD ERROR ***: Unresolved Text Symbol EVP_MD_block_size in file
>> /usr/local/bin/ssh-keygen.
>>
>> *** RLD ERROR ***: Unresolved Text Symbol EVP_MD_CTX_init in file
>> /usr/local/bin/ssh-keygen.
>>
>> I do not know why the test is forcing SSH in /usr/local/bin - it is
>> not something coming from our environment, which has PATH set correctly.
>
>Indeed that is curious, as the only hits to usr/local in t/ is this one:
>
>    $ git grep usr/local t/
>    t/test-lib.sh:test FreeBSD != $uname_s || GIT_UNZIP=${GIT_UNZIP:-
>/usr/local/bin/unzip}

I think it's coming from the NonStop definition in config.mak.uname, but I
need to be able to override the PATH to pick up the correct OpenSSH for the
OpenSSL build. We have 12 different OpenSSL builds at this point and 3
OpenSSH builds - which will likely go to 6 within the year. The complexity
is wacky but needed because we cannot set up a VM for NonStop with the
hardware we have.


```

## Junio C Hamano, 2022-04-06 17:39

Subject: Re: [BUG] git-2.36.0-rc0 - t6200 fails due to library/path issues
Message-ID: <xmqq35iqyuvb.fsf@gitster.g>
URL: https://gitlist.dev/e/xmqq35iqyuvb.fsf%40gitster.g
In-Reply-To: <041601d849a8$1441ce60$3cc56b20$@nexbridge.com>

```
<rsbecker@nexbridge.com> writes:

> t6200 makes assumptions that ssh-keygen to be used is located in
> /usr/local/bin. This causes problems when we have multiple OpenSSL
> installations - which we do - 3 of them. Our environment supplies OpenSSL
> 1.1 in /usr/local-ssl1.1, with a corresponding version of ssh-agent in a
> different directory. There needs to be a mechanism to override the
> ssh-keygen so that tests will work in this situation.
>
> *** RLD ERROR ***: Unresolved Text Symbol OPENSSL_add_all_algorithms_noconf
> in file /usr/local/bin/ssh-keygen.
>
> *** RLD ERROR ***: Unresolved Text Symbol EVP_MD_CTX_cleanup in file
> /usr/local/bin/ssh-keygen.
>
> *** RLD ERROR ***: Unresolved Text Symbol SSLeay in file
> /usr/local/bin/ssh-keygen.
>
> *** RLD ERROR ***: Unresolved Text Symbol EVP_MD_block_size in file
> /usr/local/bin/ssh-keygen.
>
> *** RLD ERROR ***: Unresolved Text Symbol EVP_MD_CTX_init in file
> /usr/local/bin/ssh-keygen.
>
> I do not know why the test is forcing SSH in /usr/local/bin - it is not
> something coming from our environment, which has PATH set correctly.

Indeed that is curious, as the only hits to usr/local in t/ is this one:

    $ git grep usr/local t/
    t/test-lib.sh:test FreeBSD != $uname_s || GIT_UNZIP=${GIT_UNZIP:-/usr/local/bin/unzip}


```
