Home | History | Annotate | Download | only in x509

Lines Matching refs:attr

120 					 X509_ATTRIBUTE *attr)
139 if ((new_attr=X509_ATTRIBUTE_dup(attr)) == NULL)
158 X509_ATTRIBUTE *attr;
160 attr = X509_ATTRIBUTE_create_by_OBJ(NULL, obj, type, bytes, len);
161 if(!attr) return 0;
162 ret = X509at_add1_attr(x, attr);
163 X509_ATTRIBUTE_free(attr);
171 X509_ATTRIBUTE *attr;
173 attr = X509_ATTRIBUTE_create_by_NID(NULL, nid, type, bytes, len);
174 if(!attr) return 0;
175 ret = X509at_add1_attr(x, attr);
176 X509_ATTRIBUTE_free(attr);
184 X509_ATTRIBUTE *attr;
186 attr = X509_ATTRIBUTE_create_by_txt(NULL, attrname, type, bytes, len);
187 if(!attr) return 0;
188 ret = X509at_add1_attr(x, attr);
189 X509_ATTRIBUTE_free(attr);
209 X509_ATTRIBUTE *X509_ATTRIBUTE_create_by_NID(X509_ATTRIBUTE **attr, int nid,
220 return X509_ATTRIBUTE_create_by_OBJ(attr,obj,atrtype,data,len);
223 X509_ATTRIBUTE *X509_ATTRIBUTE_create_by_OBJ(X509_ATTRIBUTE **attr,
228 if ((attr == NULL) || (*attr == NULL))
237 ret= *attr;
244 if ((attr != NULL) && (*attr == NULL)) *attr=ret;
247 if ((attr == NULL) || (ret != *attr))
252 X509_ATTRIBUTE *X509_ATTRIBUTE_create_by_txt(X509_ATTRIBUTE **attr,
265 nattr = X509_ATTRIBUTE_create_by_OBJ(attr,obj,type,bytes,len);
270 int X509_ATTRIBUTE_set1_object(X509_ATTRIBUTE *attr, const ASN1_OBJECT *obj)
272 if ((attr == NULL) || (obj == NULL))
274 ASN1_OBJECT_free(attr->object);
275 attr->object=OBJ_dup(obj);
276 return attr->object != NULL;
279 int X509_ATTRIBUTE_set1_data(X509_ATTRIBUTE *attr, int attrtype, const void *data, int len)
284 if (!attr) return 0;
287 OBJ_obj2nid(attr->object));
298 if(!(attr->value.set = sk_ASN1_TYPE_new_null())) goto err;
299 attr->single = 0;
314 if(!sk_ASN1_TYPE_push(attr->value.set, ttmp)) goto err;
321 int X509_ATTRIBUTE_count(X509_ATTRIBUTE *attr)
323 if(!attr->single) return sk_ASN1_TYPE_num(attr->value.set);
324 if(attr->value.single) return 1;
328 ASN1_OBJECT *X509_ATTRIBUTE_get0_object(X509_ATTRIBUTE *attr)
330 if (attr == NULL) return(NULL);
331 return(attr->object);
334 void *X509_ATTRIBUTE_get0_data(X509_ATTRIBUTE *attr, int idx,
338 ttmp = X509_ATTRIBUTE_get0_type(attr, idx);
347 ASN1_TYPE *X509_ATTRIBUTE_get0_type(X509_ATTRIBUTE *attr, int idx)
349 if (attr == NULL) return(NULL);
350 if(idx >= X509_ATTRIBUTE_count(attr)) return NULL;
351 if(!attr->single) return sk_ASN1_TYPE_value(attr->value.set, idx);
352 else return attr->value.single;