blob: bd3a9a391c051db6a5662bac7868de59b59efe7d [file] [log] [blame]
Lev Walkinf15320b2004-06-03 03:38:44 +00001/*-
2 * Copyright (c) 2003, 2004 Lev Walkin <vlm@lionet.info>. All rights reserved.
3 * Redistribution and modifications are permitted subject to BSD license.
4 */
5#ifndef _RELATIVE_OID_H_
6#define _RELATIVE_OID_H_
7
Lev Walkinf15320b2004-06-03 03:38:44 +00008#include <OBJECT_IDENTIFIER.h>
9
Lev Walkin21b41ac2005-07-24 09:03:44 +000010#ifdef __cplusplus
11extern "C" {
12#endif
13
Lev Walkin11c3e172004-09-24 21:00:50 +000014/* Implemented via OBJECT IDENTIFIER */
Lev Walkinf15320b2004-06-03 03:38:44 +000015typedef OBJECT_IDENTIFIER_t RELATIVE_OID_t;
16
Lev Walkin5e033762004-09-29 13:26:15 +000017extern asn_TYPE_descriptor_t asn_DEF_RELATIVE_OID;
Lev Walkinf15320b2004-06-03 03:38:44 +000018
19asn_struct_print_f RELATIVE_OID_print;
Lev Walkin92302252004-10-23 10:16:51 +000020xer_type_decoder_f RELATIVE_OID_decode_xer;
Lev Walkina9cc46e2004-09-22 16:06:28 +000021xer_type_encoder_f RELATIVE_OID_encode_xer;
Lev Walkinf15320b2004-06-03 03:38:44 +000022
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +080023#define RELATIVE_OID_free ASN__PRIMITIVE_TYPE_free
24#define RELATIVE_OID_constraint asn_generic_no_constraint
25#define RELATIVE_OID_decode_ber ber_decode_primitive
26#define RELATIVE_OID_encode_der der_encode_primitive
27#define RELATIVE_OID_decode_uper OCTET_STRING_decode_uper
28#define RELATIVE_OID_encode_uper OCTET_STRING_encode_uper
29
Lev Walkinf15320b2004-06-03 03:38:44 +000030/**********************************
31 * Some handy conversion routines *
32 **********************************/
33
Lev Walkin29a044b2004-06-14 07:24:36 +000034/* See OBJECT_IDENTIFIER_get_arcs() function in OBJECT_IDENTIFIER.h */
Wim Lewis14e6b162014-07-23 16:06:01 -070035int RELATIVE_OID_get_arcs(const RELATIVE_OID_t *_roid,
Lev Walkin29a044b2004-06-14 07:24:36 +000036 void *arcs, unsigned int arc_type_size, unsigned int arc_slots);
Lev Walkinf15320b2004-06-03 03:38:44 +000037
Lev Walkin0787ff02004-06-17 23:43:39 +000038/* See OBJECT_IDENTIFIER_set_arcs() function in OBJECT_IDENTIFIER.h */
39int RELATIVE_OID_set_arcs(RELATIVE_OID_t *_roid,
40 void *arcs, unsigned int arc_type_size, unsigned int arcs_slots);
41
Lev Walkin21b41ac2005-07-24 09:03:44 +000042#ifdef __cplusplus
43}
44#endif
45
Lev Walkinf15320b2004-06-03 03:38:44 +000046#endif /* _RELATIVE_OID_H_ */