Rollback of commit 0e9a1b2d51f9e03f4493e52d23cb3efc568be59f.

*** Reason for rollback ***

[] hasn't released unknown commit yet.
We need to keep the old behavior until then.

*** Original change description ***

Stop consulting the environment for "originating user" information.

--
MOS_MIGRATED_REVID=135441115
diff --git a/src/main/java/com/google/devtools/build/lib/util/UserUtils.java b/src/main/java/com/google/devtools/build/lib/util/UserUtils.java
index 84fb215..08e6f09 100644
--- a/src/main/java/com/google/devtools/build/lib/util/UserUtils.java
+++ b/src/main/java/com/google/devtools/build/lib/util/UserUtils.java
@@ -18,11 +18,15 @@
 
 import com.google.common.base.Strings;
 
+import java.util.Map;
+
 /**
  * User information utility methods.
  */
 public final class UserUtils {
 
+  private static final String ORIGINATING_USER_KEY = "BLAZE_ORIGINATING_USER";
+
   private UserUtils() {
     // prohibit instantiation
   }
@@ -41,11 +45,16 @@
   /**
    * Returns the originating user for this build from the command-line or the environment.
    */
-  public static String getOriginatingUser(String originatingUser) {
+  public static String getOriginatingUser(String originatingUser,
+                                          Map<String, String> clientEnv) {
     if (!Strings.isNullOrEmpty(originatingUser)) {
       return originatingUser;
     }
 
+    if (!Strings.isNullOrEmpty(clientEnv.get(ORIGINATING_USER_KEY))) {
+      return clientEnv.get(ORIGINATING_USER_KEY);
+    }
+
     return UserUtils.getUserName();
   }
 }
diff --git a/src/test/java/com/google/devtools/build/lib/util/UserUtilsTest.java b/src/test/java/com/google/devtools/build/lib/util/UserUtilsTest.java
new file mode 100644
index 0000000..5998862
--- /dev/null
+++ b/src/test/java/com/google/devtools/build/lib/util/UserUtilsTest.java
@@ -0,0 +1,53 @@
+// Copyright 2014 The Bazel Authors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//    http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+package com.google.devtools.build.lib.util;
+
+import static org.junit.Assert.assertEquals;
+
+import com.google.common.collect.ImmutableMap;
+import com.google.devtools.build.lib.testutil.Suite;
+import com.google.devtools.build.lib.testutil.TestSpec;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.JUnit4;
+
+import java.util.Map;
+
+/** Unit tests for {@link UserUtils}. */
+@RunWith(JUnit4.class)
+@TestSpec(size = Suite.SMALL_TESTS)
+public class UserUtilsTest {
+
+  private static final String USER = "real_user";
+  private static final Map<String, String> CLIENT_ENV = ImmutableMap
+      .of("BLAZE_ORIGINATING_USER", USER);
+  public static final ImmutableMap<String, String> EMPTY_CLIENT_ENV = ImmutableMap.of();
+
+
+  @Test
+  public void testGetOriginatingUserFromFlag() throws Exception {
+    assertEquals(USER, UserUtils.getOriginatingUser(USER, EMPTY_CLIENT_ENV));
+  }
+
+  @Test
+  public void testGetOriginatingUserFromClientEnv() throws Exception {
+    assertEquals(USER, UserUtils.getOriginatingUser("", CLIENT_ENV));
+  }
+
+  @Test
+  public void testGetOriginatingUserFromUserUtils() {
+    assertEquals(UserUtils.getUserName(), UserUtils.getOriginatingUser("", EMPTY_CLIENT_ENV));
+  }
+}