* errno.cc (errmap): Map ERROR_BAD_NET_RESP to ENOSYS.
* fhandler_disk_file.cc (fhandler_disk_file::facl): Handle ENOSYS and point to the explanation. * ntdll.h (STATUS_NOT_IMPLEMENTED): Define. * path.cc (symlink_info::check): Handle the inability of NT4 to use FileNetworkOpenInformation on share root dirs in either direction. * path.h (slash_unc_prefix_p): Remove unused declaration. * security.cc (get_info_from_sd): Handle ENOSYS from get_file_sd. Explain when this happens.
This commit is contained in:
		@@ -1054,9 +1054,15 @@ cant_access_acl:
 | 
			
		||||
	      set_errno(EFAULT);
 | 
			
		||||
	    else
 | 
			
		||||
	      res = getacl (get_stat_handle (), pc, nentries, aclbufp);
 | 
			
		||||
	      /* For this ENOSYS case, see security.cc:get_file_attribute(). */
 | 
			
		||||
	      if (res == -1 && get_errno () == ENOSYS)
 | 
			
		||||
	      	goto cant_access_acl;
 | 
			
		||||
	    break;
 | 
			
		||||
	  case GETACLCNT:
 | 
			
		||||
	    res = getacl (get_stat_handle (), pc, 0, NULL);
 | 
			
		||||
	    /* Ditto. */
 | 
			
		||||
	    if (res == -1 && get_errno () == ENOSYS)
 | 
			
		||||
	      goto cant_access_acl;
 | 
			
		||||
	    break;
 | 
			
		||||
	  default:
 | 
			
		||||
	    set_errno (EINVAL);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user