about summary refs log tree commit homepage
path: root/mgmt.c
diff options
context:
space:
mode:
Diffstat (limited to 'mgmt.c')
-rw-r--r--mgmt.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/mgmt.c b/mgmt.c
index 503398d..9909d27 100644
--- a/mgmt.c
+++ b/mgmt.c
@@ -275,26 +275,27 @@ void mog_mgmt_quit_step(struct mog_fd *mfd)
 
 /* stringify the address for tracers */
 static MOG_NOINLINE void
-trace_mgmt_accepted(struct mog_fd *mfd, struct sockaddr *sa, socklen_t salen)
+trace_mgmt_accepted(
+        struct mog_fd *mfd, union mog_sockaddr *msa, socklen_t salen)
 {
 #ifdef HAVE_SYSTEMTAP
+        struct mog_packaddr mpa;
         struct mog_ni ni;
-        int rc = mog_nameinfo(sa, salen, &ni);
-        const char *host = rc == 0 ? ni.ni_host : gai_strerror(rc);
 
-        TRACE(CMOGSTORED_MGMT_ACCEPTED(mfd->fd, host, ni.ni_serv));
+        mog_nameinfo(&mpa, &ni);
+        TRACE(CMOGSTORED_MGMT_ACCEPTED(mfd->fd, ni.ni_host, ni.ni_serv));
 #endif /* !HAVE_SYSTEMTAP */
 }
 
 /* called immediately after accept(), this initializes the mfd (once) */
 void mog_mgmt_post_accept(int fd, struct mog_svc *svc,
-                        struct sockaddr *sa, socklen_t salen)
+                        union mog_sockaddr *msa, socklen_t salen)
 {
         struct mog_fd *mfd = mog_fd_init(fd, MOG_FD_TYPE_MGMT);
         struct mog_mgmt *mgmt = &mfd->as.mgmt;
 
         if (TRACE_ENABLED(CMOGSTORED_MGMT_ACCEPTED))
-                trace_mgmt_accepted(mfd, sa, salen);
+                trace_mgmt_accepted(mfd, msa, salen);
 
         mog_mgmt_init(mgmt, svc);
         mog_idleq_add(svc->queue, mfd, MOG_QEV_RD);