diff --git a/Lib/os.py b/Lib/os.py
index 70af0a9..ea38021 100644
--- a/Lib/os.py
+++ b/Lib/os.py
@@ -317,7 +317,7 @@
 def getenv(key, default=None):
     """Get an environment variable, return None if it doesn't exist.
 
-    The optional second argument can specify an alternative default."""
+    The optional second argument can specify an alternate default."""
     return environ.get(key, default)
 
 def _exists(name):
@@ -458,14 +458,18 @@
 if _exists("fork"):
     if not _exists("popen2"):
         def popen2(cmd, mode="t", bufsize=-1):
-            assert mode[:1] in ("b", "t")
             import popen2
             stdout, stdin = popen2.popen2(cmd, bufsize)
             return stdin, stdout
 
     if not _exists("popen3"):
         def popen3(cmd, mode="t", bufsize=-1):
-            assert mode[:1] in ("b", "t")
             import popen2
             stdout, stdin, stderr = popen2.popen3(cmd, bufsize)
             return stdin, stdout, stderr
+
+    if not _exists("popen4"):
+        def popen4(cmd, mode="t", bufsize=-1):
+            import popen2
+            stdout, stdin = popen2.popen4(cmd, bufsize)
+            return stdin, stdout
