MINOR: log: use conn_get_{dst,src}() to retrieve the cli/frt/bck/srv/ addresses

This also allows us to check that the operation succeeded without
logging whatever remained in the memory area in case of failure.
diff --git a/src/log.c b/src/log.c
index 4b0491b..ff637dd 100644
--- a/src/log.c
+++ b/src/log.c
@@ -1904,7 +1904,7 @@
 	struct proxy *be;
 	struct http_txn *txn;
 	const struct strm_logs *logs;
-	const struct connection *be_conn;
+	struct connection *be_conn;
 	unsigned int s_flags;
 	unsigned int uniq_id;
 	struct buffer chunk;
@@ -2021,7 +2021,7 @@
 
 			case LOG_FMT_CLIENTIP:  // %ci
 				conn = objt_conn(sess->origin);
-				if (conn)
+				if (conn && conn_get_src(conn))
 					ret = lf_ip(tmplog, (struct sockaddr *)&conn->addr.from, dst + maxsize - tmplog, tmp);
 				else
 					ret = lf_text_len(tmplog, NULL, 0, dst + maxsize - tmplog, tmp);
@@ -2033,7 +2033,7 @@
 
 			case LOG_FMT_CLIENTPORT:  // %cp
 				conn = objt_conn(sess->origin);
-				if (conn) {
+				if (conn && conn_get_src(conn)) {
 					if (conn->addr.from.ss_family == AF_UNIX) {
 						ret = ltoa_o(sess->listener->luid, tmplog, dst + maxsize - tmplog);
 					} else {
@@ -2052,8 +2052,7 @@
 
 			case LOG_FMT_FRONTENDIP: // %fi
 				conn = objt_conn(sess->origin);
-				if (conn) {
-					conn_get_to_addr(conn);
+				if (conn && conn_get_dst(conn)) {
 					ret = lf_ip(tmplog, (struct sockaddr *)&conn->addr.to, dst + maxsize - tmplog, tmp);
 				}
 				else
@@ -2067,8 +2066,7 @@
 
 			case  LOG_FMT_FRONTENDPORT: // %fp
 				conn = objt_conn(sess->origin);
-				if (conn) {
-					conn_get_to_addr(conn);
+				if (conn && conn_get_dst(conn)) {
 					if (conn->addr.to.ss_family == AF_UNIX)
 						ret = ltoa_o(sess->listener->luid, tmplog, dst + maxsize - tmplog);
 					else
@@ -2084,7 +2082,7 @@
 				break;
 
 			case LOG_FMT_BACKENDIP:  // %bi
-				if (be_conn)
+				if (be_conn && conn_get_src(be_conn))
 					ret = lf_ip(tmplog, (const struct sockaddr *)&be_conn->addr.from, dst + maxsize - tmplog, tmp);
 				else
 					ret = lf_text_len(tmplog, NULL, 0, dst + maxsize - tmplog, tmp);
@@ -2096,7 +2094,7 @@
 				break;
 
 			case LOG_FMT_BACKENDPORT:  // %bp
-				if (be_conn)
+				if (be_conn && conn_get_src(be_conn))
 					ret = lf_port(tmplog, (struct sockaddr *)&be_conn->addr.from, dst + maxsize - tmplog, tmp);
 				else
 					ret = lf_text_len(tmplog, NULL, 0, dst + maxsize - tmplog, tmp);
@@ -2108,7 +2106,7 @@
 				break;
 
 			case LOG_FMT_SERVERIP: // %si
-				if (be_conn)
+				if (be_conn && conn_get_dst(be_conn))
 					ret = lf_ip(tmplog, (struct sockaddr *)&be_conn->addr.to, dst + maxsize - tmplog, tmp);
 				else
 					ret = lf_text_len(tmplog, NULL, 0, dst + maxsize - tmplog, tmp);
@@ -2120,7 +2118,7 @@
 				break;
 
 			case LOG_FMT_SERVERPORT: // %sp
-				if (be_conn)
+				if (be_conn && conn_get_dst(be_conn))
 					ret = lf_port(tmplog, (struct sockaddr *)&be_conn->addr.to, dst + maxsize - tmplog, tmp);
 				else
 					ret = lf_text_len(tmplog, NULL, 0, dst + maxsize - tmplog, tmp);