Start development on 386BSD 0.0
[unix-history] / .ref-BSD-4_3_Net_2 / usr / src / contrib / isode / dsap / common / attrt_new.c
#include "quipu/util.h"
#include "quipu/name.h"
AttributeType AttrT_new (name)
register char * name;
{
oid_table * Current;
extern oid_table_attr attrOIDTable [];
oid_table_attr *res;
extern attrNumEntries;
char * get_oid ();
if ((res = name2attr (name)) == NULLTABLE_ATTR) {
/* attribute not in tables, add as "ASN" if possible */
char * ptr;
OID oid;
if ((ptr = get_oid (name)) == NULLCP)
return (NULLTABLE_ATTR);
Current = &attrOIDTable[attrNumEntries].oa_ot;
Current->ot_name = strdup(name);
add_entry_aux (Current->ot_name,(caddr_t)&attrOIDTable[attrNumEntries],2,NULLCP);
Current->ot_stroid = strdup(ptr);
oid = str2oid (Current->ot_stroid);
if (oid == NULLOID)
Current->ot_oid = NULLOID;
else
Current->ot_oid = oid_cpy (oid);
attrOIDTable[attrNumEntries].oa_syntax = 0;
return (&attrOIDTable[attrNumEntries++]);
}
return (res);
}