{"url":"https://iww.hateblo.jp/entry/20130801/EAI_OVERFLOW","width":"100%","type":"rich","blog_title":"\u63ee\u767a\u6027\u306e\u30e1\u30e2\uff12","provider_name":"Hatena Blog","version":"1.0","author_name":"iww","image_url":null,"title":"getpeername()","provider_url":"https://hatena.blog","description":"\u30bd\u30b1\u30c3\u30c8\u304b\u3089sockaddr\u69cb\u9020\u4f53\u3092\u5f15\u3063\u5f35\u3063\u3066\u304f\u308b\u95a2\u6570 Man page of GETPEERNAME Man page of GETNAMEINFO #include <sys/socket.h> #include <netdb.h> #include <stdio.h> void print_peername( int sd ) { struct sockaddr_storage addr; // \u30bd\u30b1\u30c3\u30c8\u30a2\u30c9\u30ec\u30b9 socklen_t addrlen; // \u30bd\u30b1\u30c3\u30c8\u30a2\u30c9\u30ec\u30b9\u9577 char host[256]; // \u30db\u30b9\u30c8\u540d\u8868\u793a\u7528 int result; // \u30a2\u30c9\u30ec\u30b9\u60c5\u5831\u53d6\u5f97 resul\u2026","height":"190","author_url":"https://blog.hatena.ne.jp/iww/","blog_url":"https://iww.hateblo.jp/","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fiww.hateblo.jp%2Fentry%2F20130801%2FEAI_OVERFLOW\" title=\"getpeername() - \u63ee\u767a\u6027\u306e\u30e1\u30e2\uff12\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","published":"2013-08-01 00:00:00","categories":["C"]}