Print this page
14249 pseudo-terminal nomenclature should reflect POSIX
Change-Id: Ib4a3cef899ff4c71b09cb0dc6878863c5e8357bc

*** 95,105 **** * - only valid pts nodes are returned during lookup() and readdir(). * - since pts sdev_nodes are not actively destroyed when a pty goes * away, we use the validator to do deferred cleanup i.e. when such * nodes are encountered during subsequent lookup() and readdir(). */ - /*ARGSUSED*/ int devpts_validate(struct sdev_node *dv) { minor_t min; uid_t uid; --- 95,104 ----
*** 122,133 **** } /* * Check if pts driver is attached */ ! if (ptms_slave_attached() == (major_t)-1) { ! sdcmn_err7(("devpts_validate: slave not attached\n")); return (SDEV_VTOR_INVALID); } if (ptms_minor_valid(min, &uid, &gid) == 0) { if (ptms_minor_exists(min)) { --- 121,132 ---- } /* * Check if pts driver is attached */ ! if (ptms_subsidiary_attached() == (major_t)-1) { ! sdcmn_err7(("devpts_validate: subsidiary not attached\n")); return (SDEV_VTOR_INVALID); } if (ptms_minor_valid(min, &uid, &gid) == 0) { if (ptms_minor_exists(min)) {
*** 157,167 **** /* * This callback is invoked from devname_lookup_func() to create * a pts entry when the node is not found in the cache. */ - /*ARGSUSED*/ static int devpts_create_rvp(struct sdev_node *ddv, char *nm, void **arg, cred_t *cred, void *whatever, char *whichever) { minor_t min; --- 156,165 ----
*** 175,190 **** sdcmn_err7(("devpts_create_rvp: not a valid minor: %s\n", nm)); return (-1); } /* ! * Check if pts driver is attached and if it is ! * get the major number. */ ! maj = ptms_slave_attached(); if (maj == (major_t)-1) { ! sdcmn_err7(("devpts_create_rvp: slave not attached\n")); return (-1); } /* * Only allow creation of ptys allocated to our zone --- 173,187 ---- sdcmn_err7(("devpts_create_rvp: not a valid minor: %s\n", nm)); return (-1); } /* ! * Check if pts driver is attached and if it is get the major number. */ ! maj = ptms_subsidiary_attached(); if (maj == (major_t)-1) { ! sdcmn_err7(("devpts_create_rvp: subsidiary not attached\n")); return (-1); } /* * Only allow creation of ptys allocated to our zone
*** 284,294 **** * this condition. If sdev_nodes ever get a VOP_REALVP() entry point, * change the code in the namefs filesystem code (in nm_mount()) to * access the realvp of the specfs node directly instead of using * VOP_REALVP(). */ - /*ARGSUSED3*/ static int devpts_lookup(struct vnode *dvp, char *nm, struct vnode **vpp, struct pathname *pnp, int flags, struct vnode *rdir, struct cred *cred, caller_context_t *ct, int *direntflags, pathname_t *realpnp) { --- 281,290 ----
*** 324,334 **** * We allow create to find existing nodes * - if the node doesn't exist - EROFS * - creating an existing dir read-only succeeds, otherwise EISDIR * - exclusive creates fail - EEXIST */ - /*ARGSUSED2*/ static int devpts_create(struct vnode *dvp, char *nm, struct vattr *vap, vcexcl_t excl, int mode, struct vnode **vpp, struct cred *cred, int flag, caller_context_t *ct, vsecattr_t *vsecp) { --- 320,329 ----
*** 357,371 **** return (error); } /* ! * Display all instantiated pts (slave) device nodes. ! * A /dev/pts entry will be created only after the first lookup of the slave ! * device succeeds. */ - /*ARGSUSED4*/ static int devpts_readdir(struct vnode *dvp, struct uio *uiop, struct cred *cred, int *eofp, caller_context_t *ct, int flags) { struct sdev_node *sdvp = VTOSDEV(dvp); --- 352,365 ---- return (error); } /* ! * Display all instantiated pts (subsidiary) device nodes. ! * A /dev/pts entry will be created only after the first lookup of the ! * subsidiary device succeeds. */ static int devpts_readdir(struct vnode *dvp, struct uio *uiop, struct cred *cred, int *eofp, caller_context_t *ct, int flags) { struct sdev_node *sdvp = VTOSDEV(dvp);
*** 385,395 **** vap->va_uid, vap->va_gid); return (0); } - /*ARGSUSED4*/ static int devpts_setattr(struct vnode *vp, struct vattr *vap, int flags, struct cred *cred, caller_context_t *ctp) { ASSERT((vp->v_type == VCHR) || (vp->v_type == VDIR)); --- 379,388 ----