diff --git a/openstack/auth_env.go b/openstack/auth_env.go
index 805ca32..41e41e4 100644
--- a/openstack/auth_env.go
+++ b/openstack/auth_env.go
@@ -17,7 +17,7 @@
 	ErrNoPassword = fmt.Errorf("Environment variable OS_PASSWORD needs to be set.")
 )
 
-// AuthOptions fills out an identity.AuthOptions structure with the settings found on the various OpenStack
+// AuthOptionsFromEnv fills out an identity.AuthOptions structure with the settings found on the various OpenStack
 // OS_* environment variables.  The following variables provide sources of truth: OS_AUTH_URL, OS_USERNAME,
 // OS_PASSWORD, OS_TENANT_ID, and OS_TENANT_NAME.  Of these, OS_USERNAME, OS_PASSWORD, and OS_AUTH_URL must
 // have settings, or an error will result.  OS_TENANT_ID and OS_TENANT_NAME are optional.
diff --git a/openstack/endpoint_location.go b/openstack/endpoint_location.go
index 3e64911..1184b34 100644
--- a/openstack/endpoint_location.go
+++ b/openstack/endpoint_location.go
@@ -47,7 +47,7 @@
 	}
 
 	// Report an error if there were no matching endpoints.
-	return "", gophercloud.ErrEndpointNotFound
+	return "", &gophercloud.ErrEndpointNotFound{}
 }
 
 // V3EndpointURL discovers the endpoint URL for a specific service from a Catalog acquired
@@ -87,5 +87,5 @@
 	}
 
 	// Report an error if there were no matching endpoints.
-	return "", gophercloud.ErrEndpointNotFound
+	return "", &gophercloud.ErrEndpointNotFound{}
 }
diff --git a/openstack/endpoint_location_test.go b/openstack/endpoint_location_test.go
index 277209a..b538e84 100644
--- a/openstack/endpoint_location_test.go
+++ b/openstack/endpoint_location_test.go
@@ -80,11 +80,12 @@
 }
 
 func TestV2EndpointNone(t *testing.T) {
-	_, err := V2EndpointURL(&catalog2, gophercloud.EndpointOpts{
+	_, actual := V2EndpointURL(&catalog2, gophercloud.EndpointOpts{
 		Type:         "nope",
 		Availability: gophercloud.AvailabilityPublic,
 	})
-	th.CheckEquals(t, gophercloud.ErrEndpointNotFound, err)
+	expected := &gophercloud.ErrEndpointNotFound{}
+	th.CheckEquals(t, expected.Error(), actual.Error())
 }
 
 func TestV2EndpointMultiple(t *testing.T) {
@@ -199,11 +200,12 @@
 }
 
 func TestV3EndpointNone(t *testing.T) {
-	_, err := V3EndpointURL(&catalog3, gophercloud.EndpointOpts{
+	_, actual := V3EndpointURL(&catalog3, gophercloud.EndpointOpts{
 		Type:         "nope",
 		Availability: gophercloud.AvailabilityPublic,
 	})
-	th.CheckEquals(t, gophercloud.ErrEndpointNotFound, err)
+	expected := &gophercloud.ErrEndpointNotFound{}
+	th.CheckEquals(t, expected.Error(), actual.Error())
 }
 
 func TestV3EndpointMultiple(t *testing.T) {
