Print this page
NEX-16818 Add fksmbcl development tool
NEX-17264 SMB client test tp_smbutil_013 fails after NEX-14666
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Matt Barden <matt.barden@nexenta.com>
and: (fix ref leaks)

*** 20,29 **** --- 20,31 ---- */ /* * Copyright 2010 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * + * Copyright 2017 Nexenta Systems, Inc. All rights reserved. */ /* * ACL API for smbfs */
*** 81,99 **** error = mb_init_sz(mbp, MAX_RAW_SD_SIZE); if (error) return (error); m = mbp->mb_top; iocb.addr = mtod(m, uintptr_t); iocb.alloc = m->m_maxlen; iocb.used = 0; iocb.selector = selector; /* * This does the OTW Get. */ ! if (ioctl(fd, SMBFSIO_GETSD, &iocb) < 0) { error = errno; goto errout; } m->m_len = iocb.used; --- 83,102 ---- error = mb_init_sz(mbp, MAX_RAW_SD_SIZE); if (error) return (error); m = mbp->mb_top; + bzero(&iocb, sizeof (iocb)); iocb.addr = mtod(m, uintptr_t); iocb.alloc = m->m_maxlen; iocb.used = 0; iocb.selector = selector; /* * This does the OTW Get. */ ! if (nsmb_ioctl(fd, SMBFSIO_GETSD, &iocb) < 0) { error = errno; goto errout; } m->m_len = iocb.used;
*** 118,136 **** return (error); if (mbp->mb_top != m) mb_initm(mbp, m); iocb.addr = mtod(m, uintptr_t); iocb.alloc = m->m_maxlen; iocb.used = m->m_len; iocb.selector = selector; /* * This does the OTW Set. */ ! if (ioctl(fd, SMBFSIO_SETSD, &iocb) < 0) error = errno; return (error); } --- 121,140 ---- return (error); if (mbp->mb_top != m) mb_initm(mbp, m); + bzero(&iocb, sizeof (iocb)); iocb.addr = mtod(m, uintptr_t); iocb.alloc = m->m_maxlen; iocb.used = m->m_len; iocb.selector = selector; /* * This does the OTW Set. */ ! if (nsmb_ioctl(fd, SMBFSIO_SETSD, &iocb) < 0) error = errno; return (error); }