Date: Fri, 4 Mar 2016 02:14:33 +0000 (UTC) From: Marcelo Araujo <araujo@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r296376 - head/usr.sbin/ypldap Message-ID: <201603040214.u242EXwu075303@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: araujo Date: Fri Mar 4 02:14:32 2016 New Revision: 296376 URL: https://svnweb.freebsd.org/changeset/base/296376 Log: Implement the 'master' request. Obtained from: OpenBSD (r1.15) Modified: head/usr.sbin/ypldap/yp.c Modified: head/usr.sbin/ypldap/yp.c ============================================================================== --- head/usr.sbin/ypldap/yp.c Fri Mar 4 01:31:13 2016 (r296375) +++ head/usr.sbin/ypldap/yp.c Fri Mar 4 02:14:32 2016 (r296376) @@ -222,6 +222,8 @@ yp_dispatch(struct svc_req *req, SVCXPRT break; case YPPROC_MASTER: log_debug("ypproc_master"); + xdr_argument = (xdrproc_t) xdr_ypreq_nokey; + xdr_result = (xdrproc_t) xdr_ypresp_master; if (yp_check(req) == -1) return; cb = (void *)ypproc_master_2_svc; @@ -559,11 +561,18 @@ ypresp_master * ypproc_master_2_svc(ypreq_nokey *arg, struct svc_req *req) { static struct ypresp_master res; + static char master[YPMAXPEER + 1]; + bzero(&res, sizeof(res)); if (yp_valid_domain(arg->domain, (struct ypresp_val *)&res) == -1) return (&res); + + if (gethostname(master, sizeof(master)) == 0) { + res.peer = (peername)master; + res.stat = YP_TRUE; + } else + res.stat = YP_NOKEY; - res.stat = YP_YPERR; return (&res); }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201603040214.u242EXwu075303>