error code as an argument.
Use it in socket hooks where we really shouldn't rely on errno containing
the right value or even existing.
case 'm':
s = strerror(errno);
goto str;
+ case 'M':
+ s = strerror(va_arg(args, int));
+ goto str;
case 's':
s = va_arg(args, char *);
if (!s)
struct bgp_conn *conn = sk->data;
struct bgp_proto *p = conn->bgp;
- BGP_TRACE(D_EVENTS, "Connection closed (socket error %d)", err);
+ if (err)
+ BGP_TRACE(D_EVENTS, "Connection lost (%M)", err);
+ else
+ BGP_TRACE(D_EVENTS, "Connection closed");
switch (conn->state)
{
case BS_CONNECT:
{
struct rip_connection *c = s->data;
struct proto *p = c->proto;
- log( L_ERR "Unexpected error at rip transmit: %m" );
+ log( L_ERR "Unexpected error at rip transmit: %M", err );
}
static int