blob: 289bbca7fa0c7b7ad0f131e06ed3fa8044978d19 [file] [log] [blame]
Lev Walkinf15320b2004-06-03 03:38:44 +00001/*-
Lev Walkin20696a42017-10-17 21:27:33 -07002 * Copyright (c) 2003-2017 Lev Walkin <vlm@lionet.info>. All rights reserved.
Lev Walkinf15320b2004-06-03 03:38:44 +00003 * 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;
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +080018extern asn_TYPE_operation_t asn_OP_RELATIVE_OID;
Lev Walkinf15320b2004-06-03 03:38:44 +000019
20asn_struct_print_f RELATIVE_OID_print;
Lev Walkin92302252004-10-23 10:16:51 +000021xer_type_decoder_f RELATIVE_OID_decode_xer;
Lev Walkina9cc46e2004-09-22 16:06:28 +000022xer_type_encoder_f RELATIVE_OID_encode_xer;
Lev Walkina5972be2017-09-29 23:15:58 -070023asn_random_fill_f RELATIVE_OID_random_fill;
Lev Walkinf15320b2004-06-03 03:38:44 +000024
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +080025#define RELATIVE_OID_free ASN__PRIMITIVE_TYPE_free
Bi-Ruei, Chiue1bf2192017-08-19 00:55:25 +080026#define RELATIVE_OID_compare OCTET_STRING_compare
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +080027#define RELATIVE_OID_constraint asn_generic_no_constraint
28#define RELATIVE_OID_decode_ber ber_decode_primitive
29#define RELATIVE_OID_encode_der der_encode_primitive
Lev Walkinb5b524b2017-10-13 03:14:03 -070030#define RELATIVE_OID_decode_oer oer_decode_primitive
31#define RELATIVE_OID_encode_oer oer_encode_primitive
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +080032#define RELATIVE_OID_decode_uper OCTET_STRING_decode_uper
33#define RELATIVE_OID_encode_uper OCTET_STRING_encode_uper
34
Lev Walkinf15320b2004-06-03 03:38:44 +000035/**********************************
36 * Some handy conversion routines *
37 **********************************/
38
Lev Walkin29a044b2004-06-14 07:24:36 +000039/* See OBJECT_IDENTIFIER_get_arcs() function in OBJECT_IDENTIFIER.h */
Lev Walkin588bf0f2017-10-13 23:51:16 -070040ssize_t RELATIVE_OID_get_arcs(const RELATIVE_OID_t *, asn_oid_arc_t *arcs,
41 size_t arcs_count);
Lev Walkinf15320b2004-06-03 03:38:44 +000042
Lev Walkin0787ff02004-06-17 23:43:39 +000043/* See OBJECT_IDENTIFIER_set_arcs() function in OBJECT_IDENTIFIER.h */
Lev Walkin588bf0f2017-10-13 23:51:16 -070044int RELATIVE_OID_set_arcs(RELATIVE_OID_t *, const asn_oid_arc_t *arcs,
45 size_t arcs_count);
Lev Walkin0787ff02004-06-17 23:43:39 +000046
Lev Walkin21b41ac2005-07-24 09:03:44 +000047#ifdef __cplusplus
48}
49#endif
50
Lev Walkinf15320b2004-06-03 03:38:44 +000051#endif /* _RELATIVE_OID_H_ */