]> granicus.if.org Git - php/commitdiff
set username && password only if they were specified
authorAntony Dovgal <tony2001@php.net>
Sun, 13 Feb 2005 00:57:48 +0000 (00:57 +0000)
committerAntony Dovgal <tony2001@php.net>
Sun, 13 Feb 2005 00:57:48 +0000 (00:57 +0000)
ext/pdo_oci/oci_driver.c

index cd3fc0de88bb18a95abd0728207981b2835613f3..6c8cb80673eb49279903f9bb9955990f05eafde8 100755 (executable)
@@ -440,21 +440,25 @@ static int pdo_oci_handle_factory(pdo_dbh_t *dbh, zval *driver_options TSRMLS_DC
        }
 
        /* username */
-       H->last_err = OCIAttrSet(H->session, OCI_HTYPE_SESSION,
-                       dbh->username, strlen(dbh->username),
-                       OCI_ATTR_USERNAME, H->err);
-       if (H->last_err) {
-               oci_drv_error("OCIAttrSet: OCI_ATTR_USERNAME");
-               goto cleanup;
+       if (dbh->username) {
+               H->last_err = OCIAttrSet(H->session, OCI_HTYPE_SESSION,
+                               dbh->username, strlen(dbh->username),
+                               OCI_ATTR_USERNAME, H->err);
+               if (H->last_err) {
+                       oci_drv_error("OCIAttrSet: OCI_ATTR_USERNAME");
+                       goto cleanup;
+               }
        }
 
        /* password */
-       H->last_err = OCIAttrSet(H->session, OCI_HTYPE_SESSION,
-                       dbh->password, strlen(dbh->password),
-                       OCI_ATTR_PASSWORD, H->err);
-       if (H->last_err) {
-               oci_drv_error("OCIAttrSet: OCI_ATTR_PASSWORD");
-               goto cleanup;
+       if (dbh->password) {
+               H->last_err = OCIAttrSet(H->session, OCI_HTYPE_SESSION,
+                               dbh->password, strlen(dbh->password),
+                               OCI_ATTR_PASSWORD, H->err);
+               if (H->last_err) {
+                       oci_drv_error("OCIAttrSet: OCI_ATTR_PASSWORD");
+                       goto cleanup;
+               }
        }
 
        /* Now fire up the session */