[添加文件]
1.添加CertStore源代码程序文件 [目录层次介绍] 1.conf为配置文件 2.make为Makefile配置文件 3.release为执行make tarball后生成的安装包文件 4.src源代码 src/components 使用的静态库所需的头文件(libevent、openssl、hiredis) src/inc 系统所需头文件 src/lib 静态库 src/package 安装包临时目录 src/rt 功能函数代码 [编译运行] 1.cd src && make 2../cert_store --debug[release/deamon] [安装包使用] 1.cd src && make tarball 2.cd release (获取安装包) 2.1.tar -zxvf xxxx.tar.gz 2.2 cd xxx.tar.gz && make install [版本问题] 1.证书生成代码屏蔽(未调通) 2.Redis超时处理未完成 3.连接响应断开后,资源未释放
This commit is contained in:
66
src/rt/rt_string.h
Normal file
66
src/rt/rt_string.h
Normal file
@@ -0,0 +1,66 @@
|
||||
#ifndef __UTIL_STRING_H__
|
||||
#define __UTIL_STRING_H__
|
||||
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#include <stdint.h>
|
||||
|
||||
#ifndef STRLEN
|
||||
#define STRLEN(STR) ((int)strlen((const char *)STR))
|
||||
#endif
|
||||
|
||||
#ifndef ISALNUM
|
||||
#define ISALNUM(S) (isalnum((const char)S))
|
||||
#endif
|
||||
|
||||
#ifndef STRCMP
|
||||
#define STRCMP(S,D) (strcmp((const char *)S, (const char *)D))
|
||||
#endif
|
||||
|
||||
#ifndef STRSTR
|
||||
#define STRSTR(D,S) (strstr((const char *)D,(const char *)S))
|
||||
#endif
|
||||
|
||||
#ifndef STRNCMP
|
||||
#define STRNCMP(S,D,L) (strncmp((const char *)S, (const char *)D, L))
|
||||
#endif
|
||||
|
||||
#ifndef STRCAT
|
||||
#define STRCAT(D,S) (strcat((char *)D, (const char *)S))
|
||||
#endif
|
||||
|
||||
#ifndef FOREVER
|
||||
#define FOREVER for(;;)
|
||||
#endif
|
||||
|
||||
typedef struct atomic {
|
||||
volatile int counter;
|
||||
} atomic_t;
|
||||
|
||||
struct value_string {
|
||||
unsigned int value;
|
||||
const char *strptr;
|
||||
};
|
||||
|
||||
extern const char*
|
||||
val_to_str(const unsigned int val, const struct value_string *vs);
|
||||
|
||||
typedef struct{
|
||||
#define ATOMIC64_SIZE sizeof(long long)
|
||||
int64_t counter;
|
||||
}atomic64_t;
|
||||
|
||||
#define ATOMIC_INIT(i) { (i) }
|
||||
|
||||
#define atomic_read(v) (*(volatile int *)&(v)->counter)
|
||||
#define atomic64_read(v) (*(volatile int64_t *)&(v)->counter)
|
||||
|
||||
#define atomic_add(x, y) (__sync_add_and_fetch((&(((atomic_t *)x)->counter)), (y)))
|
||||
#define atomic64_add(x, y) (__sync_add_and_fetch((&(((atomic64_t *)x)->counter)), (y)))
|
||||
|
||||
static inline void atomic_set(atomic_t *v, int32_t val)
|
||||
{
|
||||
v->counter = val;
|
||||
}
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user