summaryrefslogtreecommitdiffstats
path: root/sys/kern/uipc_usrreq.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/kern/uipc_usrreq.c')
-rw-r--r--sys/kern/uipc_usrreq.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/sys/kern/uipc_usrreq.c b/sys/kern/uipc_usrreq.c
index c732c70..a6c308f 100644
--- a/sys/kern/uipc_usrreq.c
+++ b/sys/kern/uipc_usrreq.c
@@ -1798,6 +1798,7 @@ unp_internalize(struct mbuf **controlp, struct thread *td)
struct mbuf *control = *controlp;
struct proc *p = td->td_proc;
struct filedesc *fdescp = p->p_fd;
+ struct bintime *bt;
struct cmsghdr *cm = mtod(control, struct cmsghdr *);
struct cmsgcred *cmcred;
struct file **rp;
@@ -1906,6 +1907,18 @@ unp_internalize(struct mbuf **controlp, struct thread *td)
microtime(tv);
break;
+ case SCM_BINTIME:
+ *controlp = sbcreatecontrol(NULL, sizeof(*bt),
+ SCM_BINTIME, SOL_SOCKET);
+ if (*controlp == NULL) {
+ error = ENOBUFS;
+ goto out;
+ }
+ bt = (struct bintime *)
+ CMSG_DATA(mtod(*controlp, struct cmsghdr *));
+ bintime(bt);
+ break;
+
default:
error = EINVAL;
goto out;
OpenPOWER on IntegriCloud