CUBRID Engine  latest
release_string.h
Go to the documentation of this file.
1 /*
2  * Copyright 2008 Search Solution Corporation
3  * Copyright 2016 CUBRID Corporation
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  */
18 
19 
20 /*
21  * release_string.h - release related information (at client and server)
22  */
23 
24 #ifndef _RELEASE_STRING_H_
25 #define _RELEASE_STRING_H_
26 
27 #ident "$Id$"
28 
29 #include "config.h"
30 
31 #define REL_MAX_RELEASE_LENGTH 15
32 #define REL_MAX_VERSION_LENGTH 256
33 
34 /*
35  * REL_FIXUP_FUNCTION - Signature for a function that can part of
36  * a disk compatibility rule.
37  * An array of these functions can be returned by
38  * rel_get_disk_compatible.
39  */
40 typedef void (*REL_FIXUP_FUNCTION) (void);
41 
42 /*
43  * REL_COMPATIBILITY - Describes the various types of compatibility we can have.
44  * Returned by the rel_get_disk_compatible function.
45  */
46 typedef enum
47 {
53 
54 extern const char *rel_name (void);
55 extern const char *rel_release_string (void);
56 extern const char *rel_major_release_string (void);
57 extern const char *rel_build_number (void);
58 extern const char *rel_build_os (void);
59 extern const char *rel_build_type (void);
60 
61 #if defined(VERSION_STRING)
62 extern const char *rel_version_string (void);
63 #endif /* VERSION_STRING */
64 #if defined(ENABLE_UNUSED_FUNCTION)
65 extern const char *rel_copyright_header (void);
66 extern const char *rel_copyright_body (void);
67 #endif
68 extern float rel_disk_compatible (void);
69 extern void rel_set_disk_compatible (float level);
70 extern int rel_bit_platform (void);
71 
72 extern int rel_compare (const char *rel_a, const char *rel_b);
73 extern REL_COMPATIBILITY rel_get_disk_compatible (float db_level, REL_FIXUP_FUNCTION ** fixups);
74 extern bool rel_is_log_compatible (const char *writer_rel_str, const char *reader_rel_str);
75 extern REL_COMPATIBILITY rel_get_net_compatible (const char *client_rel_str, const char *server_rel_str);
76 extern void rel_copy_version_string (char *buf, size_t len);
77 #endif /* _RELEASE_STRING_H_ */
const char * rel_build_os(void)
bool rel_is_log_compatible(const char *writer_rel_str, const char *reader_rel_str)
const char * rel_name(void)
const char * rel_release_string(void)
REL_COMPATIBILITY rel_get_net_compatible(const char *client_rel_str, const char *server_rel_str)
void(* REL_FIXUP_FUNCTION)(void)
void rel_set_disk_compatible(float level)
REL_COMPATIBILITY
int rel_compare(const char *rel_a, const char *rel_b)
int rel_bit_platform(void)
REL_COMPATIBILITY rel_get_disk_compatible(float db_level, REL_FIXUP_FUNCTION **fixups)
float rel_disk_compatible(void)
const char * rel_build_number(void)
const char * rel_major_release_string(void)
void rel_copy_version_string(char *buf, size_t len)
const char * rel_build_type(void)