What does “No anode” mean in errno 55 when socket connection fails?
Steve O'Hara-Smith
steve at sohara.org
Sun Dec 27 18:00:47 UTC 2020
On Sun, 27 Dec 2020 23:03:17 +0530
Rahul Bharadwaj <rahulbharadwajpromos at gmail.com> wrote:
> I was doing a few performance tests on a local server and once in a while
> I hit an error where opening a socket connection fails.
>
> i.e. considering the simplest code:
>
> #include <errno.h>
> #include <sys/socket.h>
>
> int main() {
> /* code to create socket object */
>
> int ret = connect(sock, (struct sockaddr *)&serv_addr,
> sizeof(serv_addr));
> if (ret < 0) {
> fprintf(stderr, "connect() failed with: %d\n", errno); // <----
> *get errno as 55*
> exit(1);
> }
> /* other code */
> }
>
> There is no explanation for this error number "55". In every place, the
> only mention is "No anode". There is no mention of what "anode" means and
> what "No anode" specifically means.
I have no idea where you got that "No anode" from, let alone what
it means (no inode I could perhaps understand but not in this context). For
many things (including this) the best documentation is in the man pages
that are on the system.
> Can someone please help me with what this errno means or point me to some
> documentation explaining the same.
man errno
Is where you will find the error numbers described in some detail,
the entry for error number 55 is:
-------------------------------------------
55 ENOBUFS No buffer space available. An operation on a socket or pipe
was not performed because the system lacked sufficient buffer
space or because a queue was full.
-------------------------------------------
There is an enormous amount of documentation in the man pages, it's
almost all reference style documentation which makes figuring out where to
look harder than it should be (man -k <keyword> for keyword searches helps
somewhat) - OTOH nobody has found a good solution to that in all the
decades I've been using unices.
--
Steve O'Hara-Smith <steve at sohara.org>
More information about the freebsd-questions
mailing list