Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-02-22 10:38:43

0001 /*
0002  * Copyright (c) CERN 2013-2017
0003  *
0004  * Copyright (c) Members of the EMI Collaboration. 2010-2013
0005  *  See  http://www.eu-emi.eu/partners for details on the copyright
0006  *  holders.
0007  *
0008  * Licensed under the Apache License, Version 2.0 (the "License");
0009  * you may not use this file except in compliance with the License.
0010  * You may obtain a copy of the License at
0011  *
0012  *    http://www.apache.org/licenses/LICENSE-2.0
0013  *
0014  * Unless required by applicable law or agreed to in writing, software
0015  * distributed under the License is distributed on an "AS IS" BASIS,
0016  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
0017  * See the License for the specific language governing permissions and
0018  * limitations under the License.
0019  */
0020 
0021 #pragma once
0022 #ifndef GFAL_CONSTANTS_H_
0023 #define GFAL_CONSTANTS_H_
0024 
0025 #if !defined(__GFAL2_H_INSIDE__) && !defined(__GFAL2_BUILD__)
0026 #   warning "Direct inclusion of gfal2 headers is deprecated. Please, include only gfal_api.h or gfal_plugins_api.h"
0027 #endif
0028 
0029 #ifdef __cplusplus
0030 extern "C"
0031 {
0032 #endif
0033 
0034 /** Maximum number of plugins */
0035 #define MAX_PLUGIN_LIST 15
0036 
0037 /** Module name size */
0038 #define GFAL_MODULE_NAME_SIZE   1024
0039 
0040 /** GFAL error level for gfal_errmsg */
0041 #define GFAL_ERRMSG_LEN           2048
0042 
0043 /** default buffer size for address */
0044 #define GFAL_URL_MAX_LEN 2048
0045 
0046 /** Adler32 formatted checksum byte length */
0047 #define GFAL_ADLER_CHKSUM_LEN 8
0048 
0049 /** environment variable for personalized plugin directory  */
0050 #define GFAL_PLUGIN_DIR_ENV "GFAL_PLUGIN_DIR"
0051 /** default directory name for gfal 2 plugin search */
0052 #define GFAL_PLUGIN_DIR_SUFFIX "gfal2-plugins"
0053 /** plugin entry point */
0054 #define GFAL_PLUGIN_INIT_SYM "gfal_plugin_init"
0055 
0056 /**  environment variable for personalized configuration directory */
0057 #define GFAL_CONFIG_DIR_ENV "GFAL_CONFIG_DIR"
0058 /**  folder name under /etc for the configuration files */
0059 #define GFAL_CONFIG_DIR_SUFFIX "gfal2.d"
0060 
0061 /* xattr standard keys for getxattr / setxattr */
0062 /** replicas listing */
0063 #define GFAL_XATTR_REPLICA "user.replicas"
0064 /** guid information */
0065 #define GFAL_XATTR_GUID "user.guid"
0066 /** file comment */
0067 #define GFAL_XATTR_COMMENT "user.comment"
0068 /** file checksum type */
0069 #define GFAL_XATTR_CHKSUM_TYPE "user.chksumtype"
0070 /** file checksum */
0071 #define GFAL_XATTR_CHKSUM_VALUE "user.checksum"
0072 
0073 /**
0074  * File availability status
0075  * This key can be used to check or set the stage status of a file
0076  */
0077 #define GFAL_XATTR_STATUS "user.status"
0078 
0079 /** String value to use/compare for extended attribute user.status
0080  * user.status possible value, similar to SRM meaning of status ( brings_online )
0081  */
0082 #define GFAL_XATTR_STATUS_ONLINE "ONLINE"
0083 #define GFAL_XATTR_STATUS_NEARLINE "NEARLINE"
0084 #define GFAL_XATTR_STATUS_NEARLINE_ONLINE "ONLINE_AND_NEARLINE"
0085 #define GFAL_XATTR_STATUS_UNKNOWN "UNKNOWN"
0086 #define GFAL_XATTR_STATUS_LOST "LOST"
0087 #define GFAL_XATTR_STATUS_UNAVAILABLE "UNAVAILABLE"
0088 #define GFAL_XATTR_STATUS_NONE "NONE"
0089 
0090 /** space reporting */
0091 #define GFAL_XATTR_SPACETOKEN "spacetoken"
0092 
0093 /** tape rest api attributes */
0094 #define GFAL_XATTR_TAPE_API_SITENAME "taperestapi.sitename"
0095 #define GFAL_XATTR_TAPE_API_URI "taperestapi.uri"
0096 #define GFAL_XATTR_TAPE_API_VERSION "taperestapi.version"
0097 
0098 /** SciTag legal values */
0099 #define GFAL_SCITAG_MIN_VALUE ((1<<6) + 1)
0100 #define GFAL_SCITAG_MAX_VALUE ((1<<16) - 1)
0101 
0102 #ifdef __cplusplus
0103 }
0104 #endif
0105 
0106 #endif /* GFAL_CONSTANTS_H_ */