Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

hostip: show the list of IPs when resolving is done #12145

Closed
wants to merge 1 commit into from

Conversation

bagder
Copy link
Member

@bagder bagder commented Oct 17, 2023

Getting 'curl.se' today then gets this verbose output which might help debugging connectivity related matters.

  • Host curl.se:80 was resolved.
  • IPv6: 2a04:4e42:800::347, 2a04:4e42:600::347, 2a04:4e42:400::347, 2a04:4e42:200::347, 2a04:4e42::347, 2a04:4e42:e00::347, 2a04:4e42:c00::347, 2a04:4e42:a00::347
  • IPv4: 151.101.193.91, 151.101.129.91, 151.101.65.91, 151.101.1.91

@github-actions github-actions bot added the name lookup DNS and related tech label Oct 17, 2023
@bagder
Copy link
Member Author

bagder commented Oct 17, 2023

excellent, thanks!

@jay
Copy link
Member

jay commented Oct 17, 2023

It would be better if it showed hostname but there's no easy way to determine which is the hostname passed to resolve so I propose add it in Curl_dns_entry. see most recent commit. I also added the 'none' to clarify if none were found:

* STATE: CONNECT => RESOLVING handle 0x747208; line 1985
* Host google.com:80 was resolved.
* IPv6: (none)
* IPv4: 142.250.81.238
* STATE: RESOLVING => CONNECTING handle 0x747208; line 2059
*   Trying 142.250.81.238:80...

@bagder
Copy link
Member Author

bagder commented Oct 18, 2023

+1 byte for hostname null terminator

That byte is already in the struct by default. Now you add one extra byte...

@jay
Copy link
Member

jay commented Oct 18, 2023

oops forgot about the hostname[1]. reset to 'fixup avoid warning with strcpy'. i saw some malloc crashes and i figured that was the problem.

@bagder
Copy link
Member Author

bagder commented Oct 18, 2023

it is the strcpy that is wrong because the host name can be longer than hostlen...

Getting 'curl.se' today then gets this verbose output which might help
debugging connectivity related matters.

* Host curl.se:80 was resolved.
* IPv6: 2a04:4e42::347, 2a04:4e42:200::347, 2a04:4e42:400::347,
  2a04:4e42:600::347, 2a04:4e42:800::347, 2a04:4e42:a00::347,
  2a04:4e42:c00::347, 2a04:4e42:e00::347
* IPv4: 151.101.193.91, 151.101.1.91, 151.101.65.91, 151.101.129.91

Co-authored-by: Jay Satiro
Closes #12145
@bagder bagder closed this in b651aba Oct 20, 2023
@bagder bagder deleted the bagder/hostip-list-IPs branch October 20, 2023 21:01
#ifdef CURLRES_IPV6
(a->ai_family == PF_INET6) ||
#endif
(a->ai_family == PF_INET)) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Error when compiling without IPv6 support:

error: equality comparison with extraneous parentheses [-Werror,-Wparentheses-equality]
note: remove extraneous parentheses around the comparison to silence this warning

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks but we don't use that warning.

vszakats added a commit to vszakats/curl that referenced this pull request Oct 27, 2023
Seen with LLVM 17.

```
hostip.c:1336:22: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
 1336 |        (a->ai_family == PF_INET)) {
      |         ~~~~~~~~~~~~~^~~~~~~~~~
hostip.c:1336:22: note: remove extraneous parentheses around the comparison to silence this warning
 1336 |        (a->ai_family == PF_INET)) {
      |        ~             ^         ~
hostip.c:1336:22: note: use '=' to turn this equality comparison into an assignment
 1336 |        (a->ai_family == PF_INET)) {
      |                      ^~
      |                      =
1 warning generated.
```

Follow-up to b651aba curl#12145

Closes #xxxxx
vszakats added a commit that referenced this pull request Oct 27, 2023
Seen with LLVM 17.

```
hostip.c:1336:22: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
 1336 |        (a->ai_family == PF_INET)) {
      |         ~~~~~~~~~~~~~^~~~~~~~~~
hostip.c:1336:22: note: remove extraneous parentheses around the comparison to silence this warning
 1336 |        (a->ai_family == PF_INET)) {
      |        ~             ^         ~
hostip.c:1336:22: note: use '=' to turn this equality comparison into an assignment
 1336 |        (a->ai_family == PF_INET)) {
      |                      ^~
      |                      =
1 warning generated.
```

Follow-up to b651aba #12145

Reviewed-by: Daniel Stenberg
Closes #12215
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

Successfully merging this pull request may close these issues.

None yet

3 participants