blob: 3c5c0c47786b967d8ab42a6a5c4cbaba679b68fe [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 _UTCTime_H_
6#define _UTCTime_H_
7
Lev Walkinf15320b2004-06-03 03:38:44 +00008#include <OCTET_STRING.h>
9
Lev Walkin21b41ac2005-07-24 09:03:44 +000010#ifdef __cplusplus
11extern "C" {
12#endif
13
Lev Walkin11c3e172004-09-24 21:00:50 +000014typedef OCTET_STRING_t UTCTime_t; /* Implemented via OCTET STRING */
Lev Walkinf15320b2004-06-03 03:38:44 +000015
Lev Walkin5e033762004-09-29 13:26:15 +000016extern asn_TYPE_descriptor_t asn_DEF_UTCTime;
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +080017extern asn_TYPE_operation_t asn_OP_UTCTime;
Lev Walkinf15320b2004-06-03 03:38:44 +000018
Lev Walkinf15320b2004-06-03 03:38:44 +000019asn_struct_print_f UTCTime_print;
Lev Walkindd01a5e2017-10-14 01:45:26 -070020asn_struct_compare_f UTCTime_compare;
Lev Walkina9cc46e2004-09-22 16:06:28 +000021asn_constr_check_f UTCTime_constraint;
22xer_type_encoder_f UTCTime_encode_xer;
Lev Walkina5972be2017-09-29 23:15:58 -070023asn_random_fill_f UTCTime_random_fill;
Lev Walkinf15320b2004-06-03 03:38:44 +000024
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +080025#define UTCTime_free OCTET_STRING_free
26#define UTCTime_decode_ber OCTET_STRING_decode_ber
27#define UTCTime_encode_der OCTET_STRING_encode_der
28#define UTCTime_decode_xer OCTET_STRING_decode_xer_utf8
29#define UTCTime_decode_uper OCTET_STRING_decode_uper
30#define UTCTime_encode_uper OCTET_STRING_encode_uper
31
Lev Walkinf15320b2004-06-03 03:38:44 +000032/***********************
33 * Some handy helpers. *
34 ***********************/
35
Lev Walkinf15320b2004-06-03 03:38:44 +000036struct tm; /* <time.h> */
Lev Walkin0aca3852004-08-07 03:51:43 +000037
38/* See asn_GT2time() in GeneralizedTime.h */
39time_t asn_UT2time(const UTCTime_t *, struct tm *_optional_tm4fill, int as_gmt);
40
41/* See asn_time2GT() in GeneralizedTime.h */
42UTCTime_t *asn_time2UT(UTCTime_t *__opt_ut, const struct tm *, int force_gmt);
Lev Walkinf15320b2004-06-03 03:38:44 +000043
Lev Walkin21b41ac2005-07-24 09:03:44 +000044#ifdef __cplusplus
45}
46#endif
47
Lev Walkinf15320b2004-06-03 03:38:44 +000048#endif /* _UTCTime_H_ */