Re: [OMPI devel] Bad parameter in file oob_tcp.c

2014-03-05 Thread Ralph Castain
Yes - but Marco said he was going to look into it. I meant that I would fix
the problem George identified, although it doesn't fix the problem Marco
hit.

Sorry for the confusion



On Wed, Mar 5, 2014 at 2:48 PM, Paul Hargrove  wrote:

> Wait a second...
>
> Unless I am missing something Marco's error means that Cygwin *did* return
> INADDR_ANY.
> According to George's research that shouldn't happen (unless on XP or
> older and host is an empty string).
>
> So, changing the code to check for INADDR_NONE just ignores what should be
> an impossible return, right?
> I agree that the change makes the code check for what it was meant to
> check for, but doesn't Marco's result *still* point at a problem with host
> resolution under Cygwin?
>
> -Paul
>
>
> On Wed, Mar 5, 2014 at 2:35 PM, Ralph Castain  wrote:
>
>> Cool - I'll make the correction. Thx!
>>
>>
>>
>> On Wed, Mar 5, 2014 at 2:08 PM, George Bosilca wrote:
>>
>>> I'm afraid the snippet pointed by Ralph is incorrect, as INADDR_ANY
>>> should not be a valid return for inet_addr. Here is a quick check on
>>> different OSes.
>>>
>>> On Linux, the man Page states:
>>>
>>> If the input is invalid, INADDR_NONE (usually -1) is returned.
>>>
>>>
>>> On Mac OS X:
>>>
>>> The constant INADDR_NONE is returned by inet_addr() and inet_network()
>>> for malformed requests.
>>>
>>>
>>> On Windows things are slightly more complicated:
>>>
>>> On Windows Server 2003 and later if the string in the cp parameter is an
>>> empty string, then inet_addr returns the value INADDR_NONE. If NULL is
>>> passed in the cp parameter, then inet_addrreturns the value INADDR_NONE.
>>> On Windows XP and earlier if the string in the cp parameter is an empty
>>> string, then inet_addr returns the value INADDR_ANY. If NULL is passed in
>>> the cp parameter, then inet_addr returns the value INADDR_NONE.
>>>
>>>
>>> Thus, we should compare with INADDR_NONE and not with INADDR_ANY.
>>>
>>>   George.
>>>
>>> On Mar 4, 2014, at 22:06 , Ralph Castain  wrote:
>>>
>>> The code generating the error is here:
>>>
>>> in->sin_addr.s_addr = inet_addr(host);
>>> if (in->sin_addr.s_addr == INADDR_ANY) {
>>> return ORTE_ERR_BAD_PARAM;
>>> }
>>>
>>>
>>> The address is resolving to INADDR_ANY instead of a regular address.
>>> Does cygwin require some other method for resolving a hostname to an IP
>>> address?
>>>
>>> Ralph
>>>
>>>
>>>
>>> On Tue, Mar 4, 2014 at 3:19 PM, Marco Atzeri wrote:
>>>
 noted on cygwin with 1.7.4 and on 1.7.5rc1

 $ mpirun -n 4 ./hello_c.exe
 [MATZERI:06212] [[62628,1],0] ORTE_ERROR_LOG: Bad parameter in file
 /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
 at line 292
 [MATZERI:05620] [[62628,1],1] ORTE_ERROR_LOG: Bad parameter in file
 /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
 at line 292
 [MATZERI:06892] [[62628,1],2] ORTE_ERROR_LOG: Bad parameter in file
 /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
 at line 292
 [MATZERI:03908] [[62628,1],3] ORTE_ERROR_LOG: Bad parameter in file
 /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
 at line 292
 Hello, world, I am 1 of 4, (Open MPI v1.7.5rc1, package: Open MPI
 marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
 Hello, world, I am 2 of 4, (Open MPI v1.7.5rc1, package: Open MPI
 marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
 Hello, world, I am 3 of 4, (Open MPI v1.7.5rc1, package: Open MPI
 marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
 Hello, world, I am 0 of 4, (Open MPI v1.7.5rc1, package: Open MPI
 marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)

 any idea what could be the cause ?

 I don't remember it in previous 1.7.x releases

 the relevant code is:

 if ((rc = parse_uri(pop->af_family, pop->net, pop->port, (struct
 sockaddr*) )) != ORTE_SUCCESS) {
 ORTE_ERROR_LOG(rc);

 Regards
 Marco
 ___
 devel mailing list
 de...@open-mpi.org
 Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
 Searchable archives: http://www.open-mpi.org/
 community/lists/devel/2014/03/index.php

>>>
>>> ___
>>> devel mailing list
>>> de...@open-mpi.org
>>> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>> Searchable archives:
>>> http://www.open-mpi.org/community/lists/devel/2014/03/index.php
>>>
>>>
>>>
>>> ___
>>> devel mailing list
>>> de...@open-mpi.org
>>> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>> Link to this post:
>>> 

Re: [OMPI devel] Bad parameter in file oob_tcp.c

2014-03-05 Thread Paul Hargrove
Wait a second...

Unless I am missing something Marco's error means that Cygwin *did* return
INADDR_ANY.
According to George's research that shouldn't happen (unless on XP or older
and host is an empty string).

So, changing the code to check for INADDR_NONE just ignores what should be
an impossible return, right?
I agree that the change makes the code check for what it was meant to check
for, but doesn't Marco's result *still* point at a problem with host
resolution under Cygwin?

-Paul


On Wed, Mar 5, 2014 at 2:35 PM, Ralph Castain  wrote:

> Cool - I'll make the correction. Thx!
>
>
>
> On Wed, Mar 5, 2014 at 2:08 PM, George Bosilca wrote:
>
>> I'm afraid the snippet pointed by Ralph is incorrect, as INADDR_ANY
>> should not be a valid return for inet_addr. Here is a quick check on
>> different OSes.
>>
>> On Linux, the man Page states:
>>
>> If the input is invalid, INADDR_NONE (usually -1) is returned.
>>
>>
>> On Mac OS X:
>>
>> The constant INADDR_NONE is returned by inet_addr() and inet_network()
>> for malformed requests.
>>
>>
>> On Windows things are slightly more complicated:
>>
>> On Windows Server 2003 and later if the string in the cp parameter is an
>> empty string, then inet_addr returns the value INADDR_NONE. If NULL is
>> passed in the cp parameter, then inet_addrreturns the value INADDR_NONE.
>> On Windows XP and earlier if the string in the cp parameter is an empty
>> string, then inet_addr returns the value INADDR_ANY. If NULL is passed in
>> the cp parameter, then inet_addr returns the value INADDR_NONE.
>>
>>
>> Thus, we should compare with INADDR_NONE and not with INADDR_ANY.
>>
>>   George.
>>
>> On Mar 4, 2014, at 22:06 , Ralph Castain  wrote:
>>
>> The code generating the error is here:
>>
>> in->sin_addr.s_addr = inet_addr(host);
>> if (in->sin_addr.s_addr == INADDR_ANY) {
>> return ORTE_ERR_BAD_PARAM;
>> }
>>
>>
>> The address is resolving to INADDR_ANY instead of a regular address. Does
>> cygwin require some other method for resolving a hostname to an IP address?
>>
>> Ralph
>>
>>
>>
>> On Tue, Mar 4, 2014 at 3:19 PM, Marco Atzeri wrote:
>>
>>> noted on cygwin with 1.7.4 and on 1.7.5rc1
>>>
>>> $ mpirun -n 4 ./hello_c.exe
>>> [MATZERI:06212] [[62628,1],0] ORTE_ERROR_LOG: Bad parameter in file
>>> /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
>>> at line 292
>>> [MATZERI:05620] [[62628,1],1] ORTE_ERROR_LOG: Bad parameter in file
>>> /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
>>> at line 292
>>> [MATZERI:06892] [[62628,1],2] ORTE_ERROR_LOG: Bad parameter in file
>>> /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
>>> at line 292
>>> [MATZERI:03908] [[62628,1],3] ORTE_ERROR_LOG: Bad parameter in file
>>> /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
>>> at line 292
>>> Hello, world, I am 1 of 4, (Open MPI v1.7.5rc1, package: Open MPI
>>> marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
>>> Hello, world, I am 2 of 4, (Open MPI v1.7.5rc1, package: Open MPI
>>> marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
>>> Hello, world, I am 3 of 4, (Open MPI v1.7.5rc1, package: Open MPI
>>> marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
>>> Hello, world, I am 0 of 4, (Open MPI v1.7.5rc1, package: Open MPI
>>> marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
>>>
>>> any idea what could be the cause ?
>>>
>>> I don't remember it in previous 1.7.x releases
>>>
>>> the relevant code is:
>>>
>>> if ((rc = parse_uri(pop->af_family, pop->net, pop->port, (struct
>>> sockaddr*) )) != ORTE_SUCCESS) {
>>> ORTE_ERROR_LOG(rc);
>>>
>>> Regards
>>> Marco
>>> ___
>>> devel mailing list
>>> de...@open-mpi.org
>>> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>> Searchable archives: http://www.open-mpi.org/
>>> community/lists/devel/2014/03/index.php
>>>
>>
>> ___
>> devel mailing list
>> de...@open-mpi.org
>> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
>> Searchable archives:
>> http://www.open-mpi.org/community/lists/devel/2014/03/index.php
>>
>>
>>
>> ___
>> devel mailing list
>> de...@open-mpi.org
>> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
>> Link to this post:
>> http://www.open-mpi.org/community/lists/devel/2014/03/14301.php
>>
>
>
> ___
> devel mailing list
> de...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
> Link to this post:
> http://www.open-mpi.org/community/lists/devel/2014/03/14302.php
>



-- 
Paul H. Hargrove  phhargr...@lbl.gov
Future 

Re: [OMPI devel] Bad parameter in file oob_tcp.c

2014-03-05 Thread Ralph Castain
Cool - I'll make the correction. Thx!



On Wed, Mar 5, 2014 at 2:08 PM, George Bosilca  wrote:

> I'm afraid the snippet pointed by Ralph is incorrect, as INADDR_ANY should
> not be a valid return for inet_addr. Here is a quick check on different
> OSes.
>
> On Linux, the man Page states:
>
> If the input is invalid, INADDR_NONE (usually -1) is returned.
>
>
> On Mac OS X:
>
> The constant INADDR_NONE is returned by inet_addr() and inet_network() for
> malformed requests.
>
>
> On Windows things are slightly more complicated:
>
> On Windows Server 2003 and later if the string in the cp parameter is an
> empty string, then inet_addr returns the value INADDR_NONE. If NULL is
> passed in the cp parameter, then inet_addrreturns the value INADDR_NONE.
> On Windows XP and earlier if the string in the cp parameter is an empty
> string, then inet_addr returns the value INADDR_ANY. If NULL is passed in
> the cp parameter, then inet_addr returns the value INADDR_NONE.
>
>
> Thus, we should compare with INADDR_NONE and not with INADDR_ANY.
>
>   George.
>
> On Mar 4, 2014, at 22:06 , Ralph Castain  wrote:
>
> The code generating the error is here:
>
> in->sin_addr.s_addr = inet_addr(host);
> if (in->sin_addr.s_addr == INADDR_ANY) {
> return ORTE_ERR_BAD_PARAM;
> }
>
>
> The address is resolving to INADDR_ANY instead of a regular address. Does
> cygwin require some other method for resolving a hostname to an IP address?
>
> Ralph
>
>
>
> On Tue, Mar 4, 2014 at 3:19 PM, Marco Atzeri wrote:
>
>> noted on cygwin with 1.7.4 and on 1.7.5rc1
>>
>> $ mpirun -n 4 ./hello_c.exe
>> [MATZERI:06212] [[62628,1],0] ORTE_ERROR_LOG: Bad parameter in file
>> /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
>> at line 292
>> [MATZERI:05620] [[62628,1],1] ORTE_ERROR_LOG: Bad parameter in file
>> /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
>> at line 292
>> [MATZERI:06892] [[62628,1],2] ORTE_ERROR_LOG: Bad parameter in file
>> /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
>> at line 292
>> [MATZERI:03908] [[62628,1],3] ORTE_ERROR_LOG: Bad parameter in file
>> /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
>> at line 292
>> Hello, world, I am 1 of 4, (Open MPI v1.7.5rc1, package: Open MPI
>> marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
>> Hello, world, I am 2 of 4, (Open MPI v1.7.5rc1, package: Open MPI
>> marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
>> Hello, world, I am 3 of 4, (Open MPI v1.7.5rc1, package: Open MPI
>> marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
>> Hello, world, I am 0 of 4, (Open MPI v1.7.5rc1, package: Open MPI
>> marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
>>
>> any idea what could be the cause ?
>>
>> I don't remember it in previous 1.7.x releases
>>
>> the relevant code is:
>>
>> if ((rc = parse_uri(pop->af_family, pop->net, pop->port, (struct
>> sockaddr*) )) != ORTE_SUCCESS) {
>> ORTE_ERROR_LOG(rc);
>>
>> Regards
>> Marco
>> ___
>> devel mailing list
>> de...@open-mpi.org
>> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
>> Searchable archives: http://www.open-mpi.org/
>> community/lists/devel/2014/03/index.php
>>
>
> ___
> devel mailing list
> de...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
> Searchable archives:
> http://www.open-mpi.org/community/lists/devel/2014/03/index.php
>
>
>
> ___
> devel mailing list
> de...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
> Link to this post:
> http://www.open-mpi.org/community/lists/devel/2014/03/14301.php
>


Re: [OMPI devel] Bad parameter in file oob_tcp.c

2014-03-05 Thread George Bosilca
I’m afraid the snippet pointed by Ralph is incorrect, as INADDR_ANY should not 
be a valid return for inet_addr. Here is a quick check on different OSes.

On Linux, the man Page states:

> If the input is invalid, INADDR_NONE (usually -1) is returned.

On Mac OS X:

> The constant INADDR_NONE is returned by inet_addr() and inet_network() for 
> malformed requests.

On Windows things are slightly more complicated:

> On Windows Server 2003 and later if the string in the cp parameter is an 
> empty string, then inet_addr returns the value INADDR_NONE. If NULL is passed 
> in the cp parameter, then inet_addrreturns the value INADDR_NONE.
> On Windows XP and earlier if the string in the cp parameter is an empty 
> string, then inet_addr returns the value INADDR_ANY. If NULL is passed in the 
> cp parameter, then inet_addr returns the value INADDR_NONE.

Thus, we should compare with INADDR_NONE and not with INADDR_ANY.

  George.

On Mar 4, 2014, at 22:06 , Ralph Castain  wrote:

> The code generating the error is here:
> 
> in->sin_addr.s_addr = inet_addr(host);
> if (in->sin_addr.s_addr == INADDR_ANY) {
> return ORTE_ERR_BAD_PARAM;
> }
> 
> 
> The address is resolving to INADDR_ANY instead of a regular address. Does 
> cygwin require some other method for resolving a hostname to an IP address?
> 
> Ralph
> 
> 
> 
> On Tue, Mar 4, 2014 at 3:19 PM, Marco Atzeri  wrote:
> noted on cygwin with 1.7.4 and on 1.7.5rc1
> 
> $ mpirun -n 4 ./hello_c.exe
> [MATZERI:06212] [[62628,1],0] ORTE_ERROR_LOG: Bad parameter in file 
> /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
>  at line 292
> [MATZERI:05620] [[62628,1],1] ORTE_ERROR_LOG: Bad parameter in file 
> /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
>  at line 292
> [MATZERI:06892] [[62628,1],2] ORTE_ERROR_LOG: Bad parameter in file 
> /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
>  at line 292
> [MATZERI:03908] [[62628,1],3] ORTE_ERROR_LOG: Bad parameter in file 
> /pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c
>  at line 292
> Hello, world, I am 1 of 4, (Open MPI v1.7.5rc1, package: Open MPI 
> marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
> Hello, world, I am 2 of 4, (Open MPI v1.7.5rc1, package: Open MPI 
> marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
> Hello, world, I am 3 of 4, (Open MPI v1.7.5rc1, package: Open MPI 
> marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
> Hello, world, I am 0 of 4, (Open MPI v1.7.5rc1, package: Open MPI 
> marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
> 
> any idea what could be the cause ?
> 
> I don't remember it in previous 1.7.x releases
> 
> the relevant code is:
> 
> if ((rc = parse_uri(pop->af_family, pop->net, pop->port, (struct 
> sockaddr*) )) != ORTE_SUCCESS) {
> ORTE_ERROR_LOG(rc);
> 
> Regards
> Marco
> ___
> devel mailing list
> de...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
> Searchable archives: 
> http://www.open-mpi.org/community/lists/devel/2014/03/index.php
> 
> ___
> devel mailing list
> de...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
> Searchable archives: 
> http://www.open-mpi.org/community/lists/devel/2014/03/index.php



Re: [OMPI devel] Bad parameter in file oob_tcp.c

2014-03-05 Thread Marco Atzeri



On 05/03/2014 04:06, Ralph Castain wrote:

The code generating the error is here:

 in->sin_addr.s_addr = inet_addr(host);
 if (in->sin_addr.s_addr == INADDR_ANY) {
 return ORTE_ERR_BAD_PARAM;
 }


The address is resolving to INADDR_ANY instead of a regular address.
Does cygwin require some other method for resolving a hostname to an IP
address?

Ralph




in theory should be transparent using the same as windows.
But I need to understand if there is any difference in formal behavior

Regards
Marco



[OMPI devel] Bad parameter in file oob_tcp.c

2014-03-04 Thread Marco Atzeri

noted on cygwin with 1.7.4 and on 1.7.5rc1

$ mpirun -n 4 ./hello_c.exe
[MATZERI:06212] [[62628,1],0] ORTE_ERROR_LOG: Bad parameter in file 
/pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c 
at line 292
[MATZERI:05620] [[62628,1],1] ORTE_ERROR_LOG: Bad parameter in file 
/pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c 
at line 292
[MATZERI:06892] [[62628,1],2] ORTE_ERROR_LOG: Bad parameter in file 
/pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c 
at line 292
[MATZERI:03908] [[62628,1],3] ORTE_ERROR_LOG: Bad parameter in file 
/pub/devel/openmpi/openmpi-1.7.5rc1-1/src/openmpi-1.7.5rc1/orte/mca/oob/tcp/oob_tcp.c 
at line 292
Hello, world, I am 1 of 4, (Open MPI v1.7.5rc1, package: Open MPI 
marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
Hello, world, I am 2 of 4, (Open MPI v1.7.5rc1, package: Open MPI 
marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
Hello, world, I am 3 of 4, (Open MPI v1.7.5rc1, package: Open MPI 
marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)
Hello, world, I am 0 of 4, (Open MPI v1.7.5rc1, package: Open MPI 
marco@MATZERI Distribution, ident: 1.7.5rc1, Mar 01, 2014, 102)


any idea what could be the cause ?

I don't remember it in previous 1.7.x releases

the relevant code is:

if ((rc = parse_uri(pop->af_family, pop->net, pop->port, (struct 
sockaddr*) )) != ORTE_SUCCESS) {

ORTE_ERROR_LOG(rc);

Regards
Marco