You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-commits@hadoop.apache.org by br...@apache.org on 2014/05/28 01:05:16 UTC
svn commit: r1597896 - in
/hadoop/common/branches/branch-2/hadoop-hdfs-project:
hadoop-hdfs-nfs/src/main/java/org/apache/hadoop/hdfs/nfs/nfs3/RpcProgramNfs3.java
hadoop-hdfs/CHANGES.txt
Author: brandonli
Date: Tue May 27 23:05:15 2014
New Revision: 1597896
URL: http://svn.apache.org/r1597896
Log:
HDFS-6411. Merging change r1597895 from trunk
Modified:
hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs-nfs/src/main/java/org/apache/hadoop/hdfs/nfs/nfs3/RpcProgramNfs3.java
hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs-nfs/src/main/java/org/apache/hadoop/hdfs/nfs/nfs3/RpcProgramNfs3.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs-nfs/src/main/java/org/apache/hadoop/hdfs/nfs/nfs3/RpcProgramNfs3.java?rev=1597896&r1=1597895&r2=1597896&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs-nfs/src/main/java/org/apache/hadoop/hdfs/nfs/nfs3/RpcProgramNfs3.java (original)
+++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs-nfs/src/main/java/org/apache/hadoop/hdfs/nfs/nfs3/RpcProgramNfs3.java Tue May 27 23:05:15 2014
@@ -124,6 +124,7 @@ import org.apache.hadoop.oncrpc.security
import org.apache.hadoop.security.AccessControlException;
import org.apache.hadoop.security.SecurityUtil;
import org.apache.hadoop.security.UserGroupInformation;
+import org.apache.hadoop.security.authorize.AuthorizationException;
import org.jboss.netty.buffer.ChannelBuffer;
import org.jboss.netty.buffer.ChannelBuffers;
import org.jboss.netty.channel.Channel;
@@ -270,6 +271,17 @@ public class RpcProgramNfs3 extends RpcP
Nfs3FileAttributes attrs = null;
try {
attrs = writeManager.getFileAttr(dfsClient, handle, iug);
+ } catch (RemoteException r) {
+ LOG.warn("Exception ", r);
+ IOException io = r.unwrapRemoteException();
+ /**
+ * AuthorizationException can be thrown if the user can't be proxy'ed.
+ */
+ if (io instanceof AuthorizationException) {
+ return new GETATTR3Response(Nfs3Status.NFS3ERR_ACCES);
+ } else {
+ return new GETATTR3Response(Nfs3Status.NFS3ERR_IO);
+ }
} catch (IOException e) {
LOG.info("Can't get file attribute, fileId=" + handle.getFileId(), e);
response.setStatus(Nfs3Status.NFS3ERR_IO);
@@ -499,6 +511,17 @@ public class RpcProgramNfs3 extends RpcP
securityHandler.getUid(), securityHandler.getGid(), attrs);
return new ACCESS3Response(Nfs3Status.NFS3_OK, attrs, access);
+ } catch (RemoteException r) {
+ LOG.warn("Exception ", r);
+ IOException io = r.unwrapRemoteException();
+ /**
+ * AuthorizationException can be thrown if the user can't be proxy'ed.
+ */
+ if (io instanceof AuthorizationException) {
+ return new ACCESS3Response(Nfs3Status.NFS3ERR_ACCES);
+ } else {
+ return new ACCESS3Response(Nfs3Status.NFS3ERR_IO);
+ }
} catch (IOException e) {
LOG.warn("Exception ", e);
return new ACCESS3Response(Nfs3Status.NFS3ERR_IO);
@@ -1680,6 +1703,17 @@ public class RpcProgramNfs3 extends RpcP
return new FSSTAT3Response(Nfs3Status.NFS3_OK, attrs, totalBytes,
freeBytes, freeBytes, maxFsObjects, maxFsObjects, maxFsObjects, 0);
+ } catch (RemoteException r) {
+ LOG.warn("Exception ", r);
+ IOException io = r.unwrapRemoteException();
+ /**
+ * AuthorizationException can be thrown if the user can't be proxy'ed.
+ */
+ if (io instanceof AuthorizationException) {
+ return new FSSTAT3Response(Nfs3Status.NFS3ERR_ACCES);
+ } else {
+ return new FSSTAT3Response(Nfs3Status.NFS3ERR_IO);
+ }
} catch (IOException e) {
LOG.warn("Exception ", e);
return new FSSTAT3Response(Nfs3Status.NFS3ERR_IO);
Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt?rev=1597896&r1=1597895&r2=1597896&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt (original)
+++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt Tue May 27 23:05:15 2014
@@ -369,6 +369,9 @@ Release 2.4.1 - UNRELEASED
HDFS-6397. NN shows inconsistent value in deadnode count.
(Mohammad Kamrul Islam via kihwal)
+ HDFS-6411. nfs-hdfs-gateway mount raises I/O error and hangs when a
+ unauthorized user attempts to access it (brandonli)
+
Release 2.4.0 - 2014-04-07
INCOMPATIBLE CHANGES