]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/at.c
silence warning
[openldap] / servers / slapd / at.c
index 42c1b7a39653e708378f5ee157976c2a0abbfe21..27facafff50b885212e29f62ec22abf0c11f39a5 100644 (file)
@@ -405,6 +405,11 @@ at_add(
                        return SLAP_SCHERR_ATTR_BAD_USAGE;
                }
 
+               if ( supsat->sat_obsolete && !sat->sat_obsolete ) {
+                       /* subtypes must be obsolete if super is */
+                       return SLAP_SCHERR_ATTR_BAD_SUP;
+               }
+
                if ( sat->sat_flags & SLAP_AT_FINAL ) {
                        /* cannot subtype a "final" attribute type */
                        return SLAP_SCHERR_ATTR_BAD_SUP;
@@ -597,7 +602,8 @@ at_schema_info( Entry *e )
                        return -1;
                }
 
-               attr_merge( e, ad_attributeTypes, vals );
+               if( attr_merge( e, ad_attributeTypes, vals ) )
+                       return -1;
                ldap_memfree( vals[0].bv_val );
        }
        return 0;