From mboxrd@z Thu Jan 1 00:00:00 1970 From: Petr Vorel Date: Tue, 11 Dec 2018 21:08:03 +0100 Subject: [LTP] added SAFE_SOCKETPAIR() In-Reply-To: <515a2ca2-1f68-d2d1-524d-f4fc89be337d@google.com> References: <515a2ca2-1f68-d2d1-524d-f4fc89be337d@google.com> Message-ID: <20181211200803.GA23351@x230> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: ltp@lists.linux.it Hi Ramon, Reviewed-by: Petr Vorel ... > +++ b/lib/safe_net.c > @@ -132,6 +132,34 @@ int safe_socket(const char *file, const int lineno, void (cleanup_fn)(void), > return rval; > } > +int safe_socketpair(const char *file, const int lineno, int domain, int type, > + int protocol, int sv[]) > +{ > + int rval, ttype; > + > + rval = socketpair(domain, type, protocol, sv); > + > + if (rval < 0) { > + switch (errno) { > + case EPROTONOSUPPORT: > + case ESOCKTNOSUPPORT: > + case EOPNOTSUPP: > + case EPFNOSUPPORT: > + case EAFNOSUPPORT: > + ttype = TCONF; > + break; > + default: > + ttype = TBROK; > + } It looks like you copy paste errno's from safe_socket(). While it does not harm to have more errno's, I guess these to never come: ESOCKTNOSUPPORT, EPFNOSUPPORT. They're listed in safe_socket() as man socket(2) says "Other errors may be generated by the underlying protocol modules.", it was needed to ad them. Otherwise LGTM. > + > + tst_brkm(ttype | TERRNO, NULL, > + "%s:%d: socketpair(%d, %d, %d, %p) failed", > + file, lineno, domain, type, protocol, sv); ... Kind regards, Petr