Skip to content

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

Closed
bagder wants to merge 1 commit into
masterfrom
bagder/hostip-list-IPs
Closed

hostip: show the list of IPs when resolving is done#12145
bagder wants to merge 1 commit into
masterfrom
bagder/hostip-list-IPs

Conversation

@bagder

@bagder bagder commented Oct 17, 2023

Copy link
Copy Markdown
Member

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

bagder commented Oct 17, 2023

Copy link
Copy Markdown
Member Author

excellent, thanks!

@jay

jay commented Oct 17, 2023

Copy link
Copy Markdown
Member

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

bagder commented Oct 18, 2023

Copy link
Copy Markdown
Member Author

+1 byte for hostname null terminator

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

@jay jay force-pushed the bagder/hostip-list-IPs branch from 44a269e to 4e9dc30 Compare October 18, 2023 06:42
@jay

jay commented Oct 18, 2023

Copy link
Copy Markdown
Member

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

bagder commented Oct 18, 2023

Copy link
Copy Markdown
Member Author

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 force-pushed the bagder/hostip-list-IPs branch from 94783c9 to 16d5325 Compare October 20, 2023 15:03
@bagder bagder closed this in b651aba Oct 20, 2023
@bagder bagder deleted the bagder/hostip-list-IPs branch October 20, 2023 21:01
Comment thread lib/hostip.c
#ifdef CURLRES_IPV6
(a->ai_family == PF_INET6) ||
#endif
(a->ai_family == PF_INET)) {

Copy link
Copy Markdown
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
Copy Markdown
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

name lookup DNS and related tech

Development

Successfully merging this pull request may close these issues.

3 participants