Net::HTTP::NB blocks on connect()
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 25/100
- Issue type
- Bug
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- perl
- Domain
- networking
Research direction
Start at the Net::HTTP::NB->new entry point with Blocking => 0 and reproduce the reported strace showing connect() returning synchronously. Trace how the blocking option is applied during socket setup, then establish whether non-blocking connect() is expected or identify the change and regression coverage needed to make it so.
Written by the indexing model from the issue text.
Description
Saw this in an strace:
socket(AF_INET, SOCK_STREAM, IPPROTO_TCP) = 3<TCP:[4870277]>
ioctl(3<TCP:[4870277]>, TCGETS, 0x7ea8924c) = -1 ENOTTY (Inappropriate ioctl for
device)
_llseek(3<TCP:[4870277]>, 0, 0x7ea892a8, SEEK_CUR) = -1 ESPIPE (Illegal seek)
ioctl(3<TCP:[4870277]>, TCGETS, 0x7ea8924c) = -1 ENOTTY (Inappropriate ioctl for
device)
_llseek(3<TCP:[4870277]>, 0, 0x7ea892a8, SEEK_CUR) = -1 ESPIPE (Illegal seek)
fcntl64(3<TCP:[4870277]>, F_SETFD, FD_CLOEXEC) = 0
connect(3<TCP:[4870277]>, {sa_family=AF_INET, sin_port=htons(80), sin_addr=inet_
addr("208.74.123.84")}, 16) = 0
This comes from just calling:
my $s = Net::HTTP::NB->new(
Host => 'cpanel.net',
Blocking => 0,
) or die;
Is this a bug, or a known part of the design? Is there any way to get a non-blocking connect()?
- Dominant language
- Perl
- Stars
- 20
- Forks
- 27
- PR merge metrics
- No merged PRs in 30d
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from libwww-perl/Net-HTTP
-
Difficulty 4/5 3-5 days Newbie friendliness 50/100
libwww-perl/Net-HTTP#99 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
libwww-perl/Net-HTTP#95 ·
-
t/live.t may failOpen
Difficulty 2/5 1-3 hours Newbie friendliness 45/100
libwww-perl/Net-HTTP#87 · 2 comments ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 45/100
libwww-perl/Net-HTTP#79 · 6 comments ·
-
Difficulty 1/5 Under an hour Newbie friendliness 48/100
libwww-perl/Net-HTTP#74 ·
All issues in libwww-perl/Net-HTTP
Similar issues
-
chore: remove unused .gemini configuration directoryPossibly taken @JayadityaGit claimed this today. Open
Difficulty 1/5 Under an hour Newbie friendliness 85/100
openfoodfacts/openfoodfacts-server#14878 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
radiator-software/p5-net-ssleay#577 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
beyondgrep/website#143 ·
-
CPAN install failingOpen
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
sous-chefs/perl#110 · 1 comment ·
-
bug help wanted
Difficulty 2/5 Under an hour Newbie friendliness 70/100
bioepic-data/bervo#145 · 1 comment ·
Maintainers usually reply within 1 day