#50415 Ticket 49361 - Use IPv6 friendly network functions
Closed by spichugi. Opened by mreynolds.
mreynolds/389-ds-base ticket49361  into  master

Download 50415.patch

Description: We use these functions that are not reliable with IPv6:

             - gethostbyname()
             - inet_ntoa()
             - inet_aton()
             - inet_addr()
          This patch replaces these calls using one of the following
          preferred functions:
              - inet_ntop()
              - inet_pton()
          Also fixed a few failures in the replication CI test
          regression_test.py as replication uses code touched by this
          patch.

ASAN approved

https://pagure.io/389-ds-base/issue/49361

It could make more sense for inst.delete to better handle different states rather than overriding the state here?

Should we do a size check to make sure the buffers are large enough for this purpose?

Given that inet_addrstrlen is 16, and innet6_addrstrlen is 46, is 256 here too long? We could use INET6_ADDRSTRLEN instead of 256 here ...

I think that most of this looks like an awesome cleanup, great stuff!

It could make more sense for inst.delete to better handle different states rather than overriding the state here?

Weird after I rebased the PR I can not longer reprocue the problem, but I recall it was paths.py that was raising an error during the __get_attr_ call when the state was incorrectly ONLINE. But it seems to be working fine now. Anyway I undid this part of the PR, and applied the other changes.

rebased onto dee51e2523b95f225b95287948268e81931fec7c

I think this all seems good to me, and you fixed all my comments, so I think ack here :) if there are issues we'll probably shake them out in testing, code like this is always hard to judge :(

Thanks!

rebased onto a90dec706053f37f61ff3539d652b849c587641d

code like this is always hard to judge :(

I know, all I can say is that I did test on IPV6 and IPv4 systems and everything seemed to work fine. Anyway thanks for ack, merging...

Pull-Request has been merged by mreynolds

389-ds-base is moving from Pagure to Github. This means that new issues and pull requests
will be accepted only in 389-ds-base's github repository.

This pull request has been cloned to Github as issue and is available here:
- https://github.com/389ds/389-ds-base/issues/3473

If you want to continue to work on the PR, please navigate to the github issue,
download the patch from the attachments and file a new pull request.

Thank you for understanding. We apologize for all inconvenience.

Pull-Request has been closed by spichugi

Metadata