Lines Matching refs:dfsns

79 dfs_ns_t dfsns;
117 #define DFS_NS_EXPORTED(n) (dfsns.ns_exported && \
118 (((n) == NULL) || (smb_strcasecmp((n), dfsns.ns_name, 0) == 0)))
249 (void) rw_wrlock(&dfsns.ns_lock);
251 if (dfsns.ns_exported) {
252 if (smb_strcasecmp(dfsns.ns_name, share, 0) != 0) {
256 share, dfs_svc_name(dfsns.ns_type), dfsns.ns_name);
258 (void) rw_unlock(&dfsns.ns_lock);
264 (void) rw_unlock(&dfsns.ns_lock);
270 (void) rw_unlock(&dfsns.ns_lock);
278 (void) rw_unlock(&dfsns.ns_lock);
284 (void) strlcpy(dfsns.ns_name, share, sizeof (dfsns.ns_name));
285 (void) strlcpy(dfsns.ns_path, si.shr_path, sizeof (dfsns.ns_path));
286 dfsns.ns_type = info.i_ns_type;
288 dfsns.ns_exported = B_TRUE;
290 (void) rw_unlock(&dfsns.ns_lock);
308 (void) rw_wrlock(&dfsns.ns_lock);
312 *dfsns.ns_name = '\0';
313 *dfsns.ns_path = '\0';
314 dfsns.ns_type = 0;
315 dfsns.ns_exported = B_FALSE;
318 (void) rw_unlock(&dfsns.ns_lock);
332 (void) rw_rdlock(&dfsns.ns_lock);
334 if (DFS_NS_EXPORTED(name) && dfsns.ns_type == ns_type) {
335 (void) strlcpy(path, dfsns.ns_path, pathsz);
341 (void) rw_unlock(&dfsns.ns_lock);
350 * The caller must be holding the namespace lock (dfsns.ns_lock)
372 if (dfsns.ns_exported)
401 (void) rw_wrlock(&dfsns.ns_lock);
405 (void) rw_unlock(&dfsns.ns_lock);
409 if (dfsns.ns_exported) {
410 if (dfsns.ns_type != ns_type) {
416 dfs_svc_name(dfsns.ns_type), dfsns.ns_name);
417 (void) rw_unlock(&dfsns.ns_lock);
421 if (smb_strcasecmp(dfsns.ns_name, rootshr, 0) == 0) {
423 (void) rw_unlock(&dfsns.ns_lock);
430 rootshr, dfs_svc_name(dfsns.ns_type), dfsns.ns_name);
431 (void) rw_unlock(&dfsns.ns_lock);
436 (void) rw_unlock(&dfsns.ns_lock);
457 (void) rw_unlock(&dfsns.ns_lock);
464 (void) strlcpy(dfsns.ns_name, rootshr, sizeof (dfsns.ns_name));
465 (void) strlcpy(dfsns.ns_path, si.shr_path,
466 sizeof (dfsns.ns_path));
467 dfsns.ns_type = ns_type;
469 dfsns.ns_exported = B_TRUE;
471 (void) rw_unlock(&dfsns.ns_lock);
583 (void) rw_wrlock(&dfsns.ns_lock);
585 if (DFS_NS_EXPORTED(name) && (dfsns.ns_cache != NULL)) {
594 if (smb_avl_add(dfsns.ns_cache, dn) != 0)
599 (void) rw_unlock(&dfsns.ns_lock);
628 (void) rw_wrlock(&dfsns.ns_lock);
630 if (DFS_NS_EXPORTED(name) && (dfsns.ns_cache != NULL)) {
637 smb_avl_remove(dfsns.ns_cache, &dn);
640 (void) rw_unlock(&dfsns.ns_lock);
658 * (dfsns.ns_lock) for writing.
666 if (dfsns.ns_cache == NULL)
667 dfs_ns_load(dfsns.ns_name, dfsns.ns_path);
669 num = smb_avl_numnodes(dfsns.ns_cache);
680 * (dfsns.ns_lock) for at least reading.
685 if (dfsns.ns_exported && dfsns.ns_type == ns_type)
700 (void) rw_wrlock(&dfsns.ns_lock);
711 (void) rw_unlock(&dfsns.ns_lock);
720 * (dfsns.ns_lock) for at least reading.
727 return (smb_avl_first(dfsns.ns_cache));
735 * (dfsns.ns_lock) for at least reading.
742 return (smb_avl_next(dfsns.ns_cache, node));
1791 * The caller must be holding the namespace lock (dfsns.ns_lock) for writing.
1804 if (dfsns.ns_cache == NULL)
1829 if (smb_avl_add(dfsns.ns_cache, dn)
1846 * The caller must be holding the namespace lock (dfsns.ns_lock) for writing.
1859 if (dfsns.ns_type != SMB_NS_DFS)
1862 dfsns.ns_cache = smb_avl_create(sizeof (dfs_node_t),
1865 if (dfsns.ns_cache != NULL) {
1870 if (smb_avl_add(dfsns.ns_cache, dn) != 0)
1883 * (dfsns.ns_lock) for writing.
1892 if (dfsns.ns_cache != NULL) {
1893 smb_avl_flush(dfsns.ns_cache);
1894 smb_avl_destroy(dfsns.ns_cache);
1895 dfsns.ns_cache = NULL;