diff -ru misc/Python-2.7.6/PCbuild/build_ssl.py misc/build/Python-2.7.6/PCbuild/build_ssl.py
--- misc/Python-2.7.6/PCbuild/build_ssl.py	2012-04-09 18:07:35.000000000 -0500
+++ misc/build/Python-2.7.6/PCbuild/build_ssl.py	2012-07-25 14:37:37.000000000 -0500
@@ -253,4 +253,4 @@
     sys.exit(rc)
 
 if __name__=='__main__':
-    main()
+    sys.exit(0)
diff -ru misc/Python-2.7.6/setup.py misc/build/Python-2.7.6/setup.py
--- misc/Python-2.7.6/setup.py	2012-04-09 18:07:36.000000000 -0500
+++ misc/build/Python-2.7.6/setup.py	2012-07-25 14:37:37.000000000 -0500
@@ -702,7 +702,15 @@
         exts.append( Extension('_socket', ['socketmodule.c'],
                                depends = ['socketmodule.h']) )
         # Detect SSL support for the socket module (via _ssl)
+        UPDMINOR = os.environ.get('UPDMINOREXT')
+        ooosslinc = os.environ.get('SOLARVERSION') + '/' + \
+            os.environ.get('INPATH') + '/' + \
+            'inc'
+        if UPDMINOR != None:
+            ooosslinc = ooosslinc + UPDMINOR
+        ooosslinc = ooosslinc + '/external/'
         search_for_ssl_incs_in = [
+                              ooosslinc,
                               '/usr/local/ssl/include',
                               '/usr/contrib/ssl/include/'
                              ]
@@ -714,8 +722,15 @@
                                ['/usr/kerberos/include'])
             if krb5_h:
                 ssl_incs += krb5_h
+        ooossllib = os.environ.get('SOLARVER') + '/' + \
+            os.environ.get('INPATH') + '/' + \
+            'lib'
+        if UPDMINOR != None:
+            ooosslinc = ooosslinc + UPDMINOR
+        ooosslinc = ooosslinc + '/'
         ssl_libs = find_library_file(self.compiler, 'ssl',lib_dirs,
-                                     ['/usr/local/ssl/lib',
+                                     [ooossllib,
+                                      '/usr/local/ssl/lib',
                                       '/usr/contrib/ssl/lib/'
                                      ] )
 
