Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
慢慢CG
TDengine
提交
d8e9cdf9
T
TDengine
项目概览
慢慢CG
/
TDengine
与 Fork 源项目一致
Fork自
taosdata / TDengine
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
d8e9cdf9
编写于
6月 11, 2020
作者:
S
Shengliang Guan
提交者:
GitHub
6月 11, 2020
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #2234 from taosdata/patch/string-length
Patch/string length
上级
53f7aee0
943cdd55
变更
30
隐藏空白更改
内联
并排
Showing
30 changed file
with
119 addition
and
117 deletion
+119
-117
src/client/src/tscLocal.c
src/client/src/tscLocal.c
+1
-1
src/client/src/tscSQLParser.c
src/client/src/tscSQLParser.c
+11
-11
src/client/src/tscServer.c
src/client/src/tscServer.c
+2
-2
src/client/src/tscSql.c
src/client/src/tscSql.c
+2
-2
src/common/inc/tdataformat.h
src/common/inc/tdataformat.h
+7
-7
src/common/src/tglobal.c
src/common/src/tglobal.c
+2
-2
src/connector/python/linux/python2/taos/cinterface.py
src/connector/python/linux/python2/taos/cinterface.py
+3
-3
src/connector/python/windows/python2/taos/cinterface.py
src/connector/python/windows/python2/taos/cinterface.py
+3
-3
src/connector/python/windows/python3/taos/cinterface.py
src/connector/python/windows/python3/taos/cinterface.py
+3
-3
src/dnode/src/dnodeShell.c
src/dnode/src/dnodeShell.c
+1
-1
src/dnode/src/dnodeSystem.c
src/dnode/src/dnodeSystem.c
+1
-1
src/inc/taosdef.h
src/inc/taosdef.h
+7
-6
src/inc/taosmsg.h
src/inc/taosmsg.h
+22
-22
src/kit/shell/src/shellDarwin.c
src/kit/shell/src/shellDarwin.c
+1
-1
src/kit/shell/src/shellLinux.c
src/kit/shell/src/shellLinux.c
+1
-1
src/kit/shell/src/shellWindows.c
src/kit/shell/src/shellWindows.c
+1
-1
src/kit/taosdump/taosdump.c
src/kit/taosdump/taosdump.c
+2
-2
src/mnode/inc/mnodeDef.h
src/mnode/inc/mnodeDef.h
+6
-6
src/mnode/inc/mnodeProfile.h
src/mnode/inc/mnodeProfile.h
+1
-1
src/mnode/src/mnodeProfile.c
src/mnode/src/mnodeProfile.c
+13
-13
src/mnode/src/mnodeTable.c
src/mnode/src/mnodeTable.c
+7
-7
src/mnode/src/mnodeUser.c
src/mnode/src/mnodeUser.c
+2
-2
src/plugins/http/inc/httpHandle.h
src/plugins/http/inc/httpHandle.h
+2
-2
src/plugins/http/src/gcHandle.c
src/plugins/http/src/gcHandle.c
+2
-2
src/plugins/http/src/httpAuth.c
src/plugins/http/src/httpAuth.c
+6
-5
src/plugins/http/src/restHandle.c
src/plugins/http/src/restHandle.c
+2
-2
src/plugins/http/src/tgHandle.c
src/plugins/http/src/tgHandle.c
+4
-4
src/plugins/monitor/src/monitorMain.c
src/plugins/monitor/src/monitorMain.c
+2
-2
src/util/src/tconfig.c
src/util/src/tconfig.c
+1
-1
tests/pytest/table/boundary.py
tests/pytest/table/boundary.py
+1
-1
未找到文件。
src/client/src/tscLocal.c
浏览文件 @
d8e9cdf9
...
...
@@ -279,7 +279,7 @@ static void tscProcessCurrentUser(SSqlObj *pSql) {
pExpr
->
resType
=
TSDB_DATA_TYPE_BINARY
;
char
*
vx
=
calloc
(
1
,
pExpr
->
resBytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
vx
,
pSql
->
pTscObj
->
user
,
TSDB_USER_LEN
);
STR_WITH_MAXSIZE_TO_VARSTR
(
vx
,
pSql
->
pTscObj
->
user
,
sizeof
(
pSql
->
pTscObj
->
user
)
);
tscSetLocalQueryResult
(
pSql
,
vx
,
pExpr
->
aliasName
,
pExpr
->
resType
,
pExpr
->
resBytes
);
free
(
vx
);
...
...
src/client/src/tscSQLParser.c
浏览文件 @
d8e9cdf9
...
...
@@ -169,7 +169,7 @@ static int32_t handlePassword(SSqlCmd* pCmd, SSQLToken* pPwd) {
return
invalidSqlErrMsg
(
tscGetErrorMsgPayload
(
pCmd
),
msg1
);
}
if
(
pPwd
->
n
>
TSDB_PASSWORD_LEN
)
{
if
(
pPwd
->
n
>
=
TSDB_PASSWORD_LEN
)
{
return
invalidSqlErrMsg
(
tscGetErrorMsgPayload
(
pCmd
),
msg2
);
}
...
...
@@ -232,7 +232,7 @@ int32_t tscToSQLCmd(SSqlObj* pSql, struct SSqlInfo* pInfo) {
pzName
->
n
=
strdequote
(
pzName
->
z
);
strncpy
(
pTableMetaInfo
->
name
,
pzName
->
z
,
pzName
->
n
);
}
else
{
// drop user
if
(
pzName
->
n
>
TSDB_USER_LEN
)
{
if
(
pzName
->
n
>
=
TSDB_USER_LEN
)
{
return
invalidSqlErrMsg
(
tscGetErrorMsgPayload
(
pCmd
),
msg3
);
}
...
...
@@ -317,7 +317,7 @@ int32_t tscToSQLCmd(SSqlObj* pSql, struct SSqlInfo* pInfo) {
return
TSDB_CODE_TSC_INVALID_SQL
;
}
if
(
pName
->
n
>
TSDB_USER_LEN
)
{
if
(
pName
->
n
>
=
TSDB_USER_LEN
)
{
return
invalidSqlErrMsg
(
tscGetErrorMsgPayload
(
pCmd
),
msg3
);
}
...
...
@@ -401,7 +401,7 @@ int32_t tscToSQLCmd(SSqlObj* pSql, struct SSqlInfo* pInfo) {
SSQLToken
*
pName
=
&
pUser
->
user
;
SSQLToken
*
pPwd
=
&
pUser
->
passwd
;
if
(
pName
->
n
>
TSDB_USER_LEN
)
{
if
(
pName
->
n
>
=
TSDB_USER_LEN
)
{
return
invalidSqlErrMsg
(
tscGetErrorMsgPayload
(
pCmd
),
msg3
);
}
...
...
@@ -1056,12 +1056,12 @@ int32_t setObjFullName(char* fullName, const char* account, SSQLToken* pDB, SSQL
totalLen
+=
1
;
/* here we only check the table name length limitation */
if
(
tableName
->
n
>
TSDB_TABLE_NAME_LEN
)
{
if
(
tableName
->
n
>
=
TSDB_TABLE_NAME_LEN
)
{
return
TSDB_CODE_TSC_INVALID_SQL
;
}
}
else
{
// pDB == NULL, the db prefix name is specified in tableName
/* the length limitation includes tablename + dbname + sep */
if
(
tableName
->
n
>
(
TSDB_TABLE_NAME_LEN
-
1
)
+
(
TSDB_DB_NAME_LEN
-
1
)
+
sizeof
(
TS_PATH_DELIMITER
)
)
{
if
(
tableName
->
n
>
=
TSDB_TABLE_NAME_LEN
+
TSDB_DB_NAME_LEN
)
{
return
TSDB_CODE_TSC_INVALID_SQL
;
}
}
...
...
@@ -1078,7 +1078,7 @@ int32_t setObjFullName(char* fullName, const char* account, SSQLToken* pDB, SSQL
fullName
[
totalLen
]
=
0
;
}
return
(
totalLen
<
=
TSDB_TABLE_ID_LEN
)
?
TSDB_CODE_SUCCESS
:
TSDB_CODE_TSC_INVALID_SQL
;
return
(
totalLen
<
TSDB_TABLE_ID_LEN
)
?
TSDB_CODE_SUCCESS
:
TSDB_CODE_TSC_INVALID_SQL
;
}
static
void
extractColumnNameFromString
(
tSQLExprItem
*
pItem
)
{
...
...
@@ -2052,7 +2052,7 @@ int32_t getTableIndexImpl(SSQLToken* pTableToken, SQueryInfo* pQueryInfo, SColum
}
pIndex
->
tableIndex
=
COLUMN_INDEX_INITIAL_VAL
;
char
tableName
[
TSDB_TABLE_ID_LEN
+
1
]
=
{
0
};
char
tableName
[
TSDB_TABLE_ID_LEN
]
=
{
0
};
for
(
int32_t
i
=
0
;
i
<
pQueryInfo
->
numOfTables
;
++
i
)
{
STableMetaInfo
*
pTableMetaInfo
=
tscGetMetaInfo
(
pQueryInfo
,
i
);
...
...
@@ -2241,7 +2241,7 @@ int32_t setShowInfo(SSqlObj* pSql, struct SSqlInfo* pInfo) {
// show vnodes may be ip addr of dnode in payload
SSQLToken
*
pDnodeIp
=
&
pShowInfo
->
prefix
;
if
(
pDnodeIp
->
n
>
TSDB_IPv4ADDR_LEN
)
{
// ip addr is too long
if
(
pDnodeIp
->
n
>
=
TSDB_IPv4ADDR_LEN
)
{
// ip addr is too long
return
invalidSqlErrMsg
(
tscGetErrorMsgPayload
(
pCmd
),
msg3
);
}
...
...
@@ -3616,7 +3616,7 @@ static int32_t setTableCondForSTableQuery(SQueryInfo* pQueryInfo, const char* ac
taosStringBuilderAppendStringLen
(
&
sb1
,
TBNAME_LIST_SEP
,
1
);
}
char
idBuf
[
TSDB_TABLE_ID_LEN
+
1
]
=
{
0
};
char
idBuf
[
TSDB_TABLE_ID_LEN
]
=
{
0
};
int32_t
xlen
=
strlen
(
segments
[
i
]);
SSQLToken
t
=
{.
z
=
segments
[
i
],
.
n
=
xlen
,
.
type
=
TK_STRING
};
...
...
@@ -5603,7 +5603,7 @@ int32_t doCheckForCreateFromStable(SSqlObj* pSql, SSqlInfo* pInfo) {
}
// get meter meta from mnode
strncpy
(
pCreateTable
->
usingInfo
.
tagdata
.
name
,
pStableMeterMetaInfo
->
name
,
TSDB_TABLE_ID_LEN
);
tstrncpy
(
pCreateTable
->
usingInfo
.
tagdata
.
name
,
pStableMeterMetaInfo
->
name
,
sizeof
(
pCreateTable
->
usingInfo
.
tagdata
.
name
)
);
tVariantList
*
pList
=
pInfo
->
pCreateTableInfo
->
usingInfo
.
pTagVals
;
int32_t
code
=
tscGetTableMeta
(
pSql
,
pStableMeterMetaInfo
);
...
...
src/client/src/tscServer.c
浏览文件 @
d8e9cdf9
...
...
@@ -1705,8 +1705,8 @@ int tscBuildSTableVgroupMsg(SSqlObj *pSql, SSqlInfo *pInfo) {
for
(
int32_t
i
=
0
;
i
<
pQueryInfo
->
numOfTables
;
++
i
)
{
STableMetaInfo
*
pTableMetaInfo
=
tscGetTableMetaInfoFromCmd
(
pCmd
,
pCmd
->
clauseIndex
,
i
);
strncpy
(
pMsg
,
pTableMetaInfo
->
name
,
TSDB_TABLE_ID_LEN
);
pMsg
+=
TSDB_TABLE_ID_LEN
;
tstrncpy
(
pMsg
,
pTableMetaInfo
->
name
,
sizeof
(
pTableMetaInfo
->
name
)
);
pMsg
+=
sizeof
(
pTableMetaInfo
->
name
)
;
}
pCmd
->
msgType
=
TSDB_MSG_TYPE_CM_STABLE_VGROUP
;
...
...
src/client/src/tscSql.c
浏览文件 @
d8e9cdf9
...
...
@@ -45,11 +45,11 @@ static bool validImpl(const char* str, size_t maxsize) {
}
static
bool
validUserName
(
const
char
*
user
)
{
return
validImpl
(
user
,
TSDB_USER_LEN
);
return
validImpl
(
user
,
TSDB_USER_LEN
-
1
);
}
static
bool
validPassword
(
const
char
*
passwd
)
{
return
validImpl
(
passwd
,
TSDB_PASSWORD_LEN
);
return
validImpl
(
passwd
,
TSDB_PASSWORD_LEN
-
1
);
}
SSqlObj
*
taosConnectImpl
(
const
char
*
ip
,
const
char
*
user
,
const
char
*
pass
,
const
char
*
db
,
uint16_t
port
,
...
...
src/common/inc/tdataformat.h
浏览文件 @
d8e9cdf9
...
...
@@ -69,8 +69,8 @@ typedef struct {
int
version
;
// version
int
numOfCols
;
// Number of columns appended
int
tlen
;
// maximum length of a SDataRow without the header part
int16_t
flen
;
// First part length in a SDataRow after the header part
int16_t
vlen
;
// pure value part length, excluded the overhead
u
int16_t
flen
;
// First part length in a SDataRow after the header part
u
int16_t
vlen
;
// pure value part length, excluded the overhead
STColumn
columns
[];
}
STSchema
;
...
...
@@ -107,8 +107,8 @@ typedef struct {
int
tCols
;
int
nCols
;
int
tlen
;
int16_t
flen
;
int16_t
vlen
;
u
int16_t
flen
;
u
int16_t
vlen
;
int
version
;
STColumn
*
columns
;
}
STSchemaBuilder
;
...
...
@@ -125,16 +125,16 @@ STSchema *tdGetSchemaFromBuilder(STSchemaBuilder *pBuilder);
* |<--------------------+--------------------------- len ---------------------------------->|
* |<-- Head -->|<--------- flen -------------->| |
* +---------------------+---------------------------------+---------------------------------+
* |
int16_t
| int16_t | | |
* |
uint16_t
| int16_t | | |
* +----------+----------+---------------------------------+---------------------------------+
* | len | sversion | First part | Second part |
* +----------+----------+---------------------------------+---------------------------------+
*/
typedef
void
*
SDataRow
;
#define TD_DATA_ROW_HEAD_SIZE
sizeof(int16_t)*2
#define TD_DATA_ROW_HEAD_SIZE
(sizeof(uint16_t) + sizeof(int16_t))
#define dataRowLen(r) (*(int16_t *)(r))
#define dataRowLen(r) (*(
u
int16_t *)(r))
#define dataRowVersion(r) *(int16_t *)POINTER_SHIFT(r, sizeof(int16_t))
#define dataRowTuple(r) POINTER_SHIFT(r, TD_DATA_ROW_HEAD_SIZE)
#define dataRowKey(r) (*(TSKEY *)(dataRowTuple(r)))
...
...
src/common/src/tglobal.c
浏览文件 @
d8e9cdf9
...
...
@@ -718,7 +718,7 @@ static void doInitGlobalConfig() {
cfg
.
cfgType
=
TSDB_CFG_CTYPE_B_CONFIG
|
TSDB_CFG_CTYPE_B_CLIENT
;
cfg
.
minValue
=
0
;
cfg
.
maxValue
=
0
;
cfg
.
ptrLength
=
TSDB_USER_LEN
;
cfg
.
ptrLength
=
TSDB_USER_LEN
-
1
;
cfg
.
unitType
=
TAOS_CFG_UTYPE_NONE
;
taosInitConfigOption
(
cfg
);
...
...
@@ -728,7 +728,7 @@ static void doInitGlobalConfig() {
cfg
.
cfgType
=
TSDB_CFG_CTYPE_B_CONFIG
|
TSDB_CFG_CTYPE_B_CLIENT
|
TSDB_CFG_CTYPE_B_NOT_PRINT
;
cfg
.
minValue
=
0
;
cfg
.
maxValue
=
0
;
cfg
.
ptrLength
=
TSDB_PASSWORD_LEN
;
cfg
.
ptrLength
=
TSDB_PASSWORD_LEN
-
1
;
cfg
.
unitType
=
TAOS_CFG_UTYPE_NONE
;
taosInitConfigOption
(
cfg
);
...
...
src/connector/python/linux/python2/taos/cinterface.py
浏览文件 @
d8e9cdf9
...
...
@@ -130,9 +130,9 @@ _CONVERT_FUNC = {
# Corresponding TAOS_FIELD structure in C
class
TaosField
(
ctypes
.
Structure
):
_fields_
=
[(
'name'
,
ctypes
.
c_char
*
6
4
),
(
'
bytes'
,
ctypes
.
c_short
),
(
'
type'
,
ctypes
.
c_char
)]
_fields_
=
[(
'name'
,
ctypes
.
c_char
*
6
5
),
(
'
type'
,
ctypes
.
c_char
),
(
'
bytes'
,
ctypes
.
c_short
)]
# C interface class
class
CTaosInterface
(
object
):
...
...
src/connector/python/windows/python2/taos/cinterface.py
浏览文件 @
d8e9cdf9
...
...
@@ -130,9 +130,9 @@ _CONVERT_FUNC = {
# Corresponding TAOS_FIELD structure in C
class
TaosField
(
ctypes
.
Structure
):
_fields_
=
[(
'name'
,
ctypes
.
c_char
*
6
4
),
(
'
bytes'
,
ctypes
.
c_short
),
(
'
type'
,
ctypes
.
c_char
)]
_fields_
=
[(
'name'
,
ctypes
.
c_char
*
6
5
),
(
'
type'
,
ctypes
.
c_char
),
(
'
bytes'
,
ctypes
.
c_short
)]
# C interface class
class
CTaosInterface
(
object
):
...
...
src/connector/python/windows/python3/taos/cinterface.py
浏览文件 @
d8e9cdf9
...
...
@@ -130,9 +130,9 @@ _CONVERT_FUNC = {
# Corresponding TAOS_FIELD structure in C
class
TaosField
(
ctypes
.
Structure
):
_fields_
=
[(
'name'
,
ctypes
.
c_char
*
6
4
),
(
'
bytes'
,
ctypes
.
c_short
),
(
'
type'
,
ctypes
.
c_char
)]
_fields_
=
[(
'name'
,
ctypes
.
c_char
*
6
5
),
(
'
type'
,
ctypes
.
c_char
),
(
'
bytes'
,
ctypes
.
c_short
)]
# C interface class
class
CTaosInterface
(
object
):
...
...
src/dnode/src/dnodeShell.c
浏览文件 @
d8e9cdf9
...
...
@@ -147,7 +147,7 @@ static int dnodeRetrieveUserAuthInfo(char *user, char *spi, char *encrypt, char
if
(
code
!=
TSDB_CODE_RPC_NOT_READY
)
return
code
;
SDMAuthMsg
*
pMsg
=
rpcMallocCont
(
sizeof
(
SDMAuthMsg
));
tstrncpy
(
pMsg
->
user
,
user
,
TSDB_USER_LEN
);
tstrncpy
(
pMsg
->
user
,
user
,
sizeof
(
pMsg
->
user
)
);
SRpcMsg
rpcMsg
=
{
0
};
rpcMsg
.
pCont
=
pMsg
;
...
...
src/dnode/src/dnodeSystem.c
浏览文件 @
d8e9cdf9
...
...
@@ -29,7 +29,7 @@ int32_t main(int32_t argc, char *argv[]) {
for
(
int32_t
i
=
1
;
i
<
argc
;
++
i
)
{
if
(
strcmp
(
argv
[
i
],
"-c"
)
==
0
)
{
if
(
i
<
argc
-
1
)
{
if
(
strlen
(
argv
[
++
i
])
>
TSDB_FILENAME_LEN
-
1
)
{
if
(
strlen
(
argv
[
++
i
])
>
=
TSDB_FILENAME_LEN
)
{
printf
(
"config file path overflow"
);
exit
(
EXIT_FAILURE
);
}
...
...
src/inc/taosdef.h
浏览文件 @
d8e9cdf9
...
...
@@ -186,14 +186,14 @@ void tsDataSwap(void *pLeft, void *pRight, int32_t type, int32_t size);
#define TSDB_BINARY_OP_MULTIPLY 14
#define TSDB_BINARY_OP_DIVIDE 15
#define TSDB_BINARY_OP_REMAINDER 16
#define TSDB_USERID_LEN 9
#define TS_PATH_DELIMITER_LEN 1
#define TSDB_METER_ID_LEN_MARGIN 8
#define TSDB_TABLE_ID_LEN (TSDB_DB_NAME_LEN+TSDB_TABLE_NAME_LEN+2*TS_PATH_DELIMITER_LEN+TSDB_USERID_LEN+TSDB_METER_ID_LEN_MARGIN) //TSDB_DB_NAME_LEN+TSDB_TABLE_NAME_LEN+2*strlen(TS_PATH_DELIMITER)+strlen(USERID)
#define TSDB_UNI_LEN 24
#define TSDB_USER_LEN TSDB_UNI_LEN
#define TSDB_ACCT_LEN TSDB_UNI_LEN
// ACCOUNT is a 32 bit positive integer
// this is the length of its string representation
// including the terminator zero
#define TSDB_ACCT_LEN 11
#define TSDB_PASSWORD_LEN TSDB_UNI_LEN
#define TSDB_MAX_COLUMNS 1024
...
...
@@ -202,14 +202,15 @@ void tsDataSwap(void *pLeft, void *pRight, int32_t type, int32_t size);
#define TSDB_NODE_NAME_LEN 64
#define TSDB_TABLE_NAME_LEN 193
#define TSDB_DB_NAME_LEN 33
#define TSDB_TABLE_ID_LEN (TSDB_ACCT_LEN + TSDB_DB_NAME_LEN + TSDB_TABLE_NAME_LEN)
#define TSDB_COL_NAME_LEN 65
#define TSDB_MAX_SAVED_SQL_LEN TSDB_MAX_COLUMNS * 64
#define TSDB_MAX_SQL_LEN TSDB_PAYLOAD_SIZE
#define TSDB_MAX_SQL_SHOW_LEN 256
#define TSDB_MAX_ALLOWED_SQL_LEN (8*1024*1024U) // sql length should be less than 8mb
#define TSDB_MAX_BYTES_PER_ROW
TSDB_MAX_COLUMNS * 64
#define TSDB_MAX_TAGS_LEN 6553
6
#define TSDB_MAX_BYTES_PER_ROW
65535
#define TSDB_MAX_TAGS_LEN 6553
5
#define TSDB_MAX_TAGS 128
#define TSDB_AUTH_LEN 16
...
...
src/inc/taosmsg.h
浏览文件 @
d8e9cdf9
...
...
@@ -243,13 +243,13 @@ typedef struct {
uint64_t
uid
;
uint64_t
superTableUid
;
uint64_t
createdTime
;
char
tableId
[
TSDB_TABLE_ID_LEN
+
1
];
char
superTableId
[
TSDB_TABLE_ID_LEN
+
1
];
char
tableId
[
TSDB_TABLE_ID_LEN
];
char
superTableId
[
TSDB_TABLE_ID_LEN
];
char
data
[];
}
SMDCreateTableMsg
;
typedef
struct
{
char
tableId
[
TSDB_TABLE_ID_LEN
+
1
];
char
tableId
[
TSDB_TABLE_ID_LEN
];
char
db
[
TSDB_DB_NAME_LEN
];
int8_t
igExists
;
int8_t
getMeta
;
...
...
@@ -262,12 +262,12 @@ typedef struct {
}
SCMCreateTableMsg
;
typedef
struct
{
char
tableId
[
TSDB_TABLE_ID_LEN
+
1
];
char
tableId
[
TSDB_TABLE_ID_LEN
];
int8_t
igNotExists
;
}
SCMDropTableMsg
;
typedef
struct
{
char
tableId
[
TSDB_TABLE_ID_LEN
+
1
];
char
tableId
[
TSDB_TABLE_ID_LEN
];
char
db
[
TSDB_DB_NAME_LEN
];
int16_t
type
;
/* operation type */
int16_t
numOfCols
;
/* number of schema */
...
...
@@ -292,7 +292,7 @@ typedef struct {
typedef
struct
{
char
clientVersion
[
TSDB_VERSION_LEN
];
char
msgVersion
[
TSDB_VERSION_LEN
];
char
db
[
TSDB_TABLE_ID_LEN
+
1
];
char
db
[
TSDB_TABLE_ID_LEN
];
}
SCMConnectMsg
;
typedef
struct
{
...
...
@@ -321,18 +321,18 @@ typedef struct {
}
SAcctCfg
;
typedef
struct
{
char
user
[
TSDB_USER_LEN
+
1
];
char
pass
[
TSDB_KEY_LEN
+
1
];
char
user
[
TSDB_USER_LEN
];
char
pass
[
TSDB_KEY_LEN
];
SAcctCfg
cfg
;
}
SCMCreateAcctMsg
,
SCMAlterAcctMsg
;
typedef
struct
{
char
user
[
TSDB_USER_LEN
+
1
];
char
user
[
TSDB_USER_LEN
];
}
SCMDropUserMsg
,
SCMDropAcctMsg
;
typedef
struct
{
char
user
[
TSDB_USER_LEN
+
1
];
char
pass
[
TSDB_KEY_LEN
+
1
];
char
user
[
TSDB_USER_LEN
];
char
pass
[
TSDB_KEY_LEN
];
int8_t
privilege
;
int8_t
flag
;
}
SCMCreateUserMsg
,
SCMAlterUserMsg
;
...
...
@@ -342,14 +342,14 @@ typedef struct {
int32_t
vgId
;
int32_t
sid
;
uint64_t
uid
;
char
tableId
[
TSDB_TABLE_ID_LEN
+
1
];
char
tableId
[
TSDB_TABLE_ID_LEN
];
}
SMDDropTableMsg
;
typedef
struct
{
int32_t
contLen
;
int32_t
vgId
;
uint64_t
uid
;
char
tableId
[
TSDB_TABLE_ID_LEN
+
1
];
char
tableId
[
TSDB_TABLE_ID_LEN
];
}
SMDDropSTableMsg
;
typedef
struct
{
...
...
@@ -501,7 +501,7 @@ typedef struct {
}
SVnodeLoad
;
typedef
struct
{
char
acct
[
TSDB_USER_LEN
+
1
];
char
acct
[
TSDB_USER_LEN
];
char
db
[
TSDB_DB_NAME_LEN
];
int32_t
cacheBlockSize
;
//MB
int32_t
totalBlocks
;
...
...
@@ -521,7 +521,7 @@ typedef struct {
}
SCMCreateDbMsg
,
SCMAlterDbMsg
;
typedef
struct
{
char
db
[
TSDB_TABLE_ID_LEN
+
1
];
char
db
[
TSDB_TABLE_ID_LEN
];
uint8_t
ignoreNotExists
;
}
SCMDropDbMsg
,
SCMUseDbMsg
;
...
...
@@ -612,7 +612,7 @@ typedef struct {
}
SMDCreateVnodeMsg
;
typedef
struct
{
char
tableId
[
TSDB_TABLE_ID_LEN
+
1
];
char
tableId
[
TSDB_TABLE_ID_LEN
];
int16_t
createFlag
;
char
tags
[];
}
SCMTableInfoMsg
;
...
...
@@ -639,7 +639,7 @@ typedef struct {
typedef
struct
STableMetaMsg
{
int32_t
contLen
;
char
tableId
[
TSDB_TABLE_ID_LEN
+
1
];
// table id
char
tableId
[
TSDB_TABLE_ID_LEN
];
// table id
uint8_t
numOfTags
;
uint8_t
precision
;
uint8_t
tableType
;
...
...
@@ -660,7 +660,7 @@ typedef struct SMultiTableMeta {
typedef
struct
{
int32_t
dataLen
;
char
name
[
TSDB_TABLE_ID_LEN
+
1
];
char
name
[
TSDB_TABLE_ID_LEN
];
char
data
[
TSDB_MAX_TAGS_LEN
];
}
STagData
;
...
...
@@ -746,15 +746,15 @@ typedef struct {
uint64_t
uid
;
uint64_t
stime
;
// stream starting time
int32_t
status
;
char
tableId
[
TSDB_TABLE_ID_LEN
+
1
];
char
tableId
[
TSDB_TABLE_ID_LEN
];
}
SMDAlterStreamMsg
;
typedef
struct
{
char
user
[
TSDB_USER_LEN
+
1
];
char
user
[
TSDB_USER_LEN
];
char
spi
;
char
encrypt
;
char
secret
[
TSDB_KEY_LEN
+
1
];
char
ckey
[
TSDB_KEY_LEN
+
1
];
char
secret
[
TSDB_KEY_LEN
];
char
ckey
[
TSDB_KEY_LEN
];
}
SDMAuthMsg
,
SDMAuthRsp
;
#pragma pack(pop)
...
...
src/kit/shell/src/shellDarwin.c
浏览文件 @
d8e9cdf9
...
...
@@ -97,7 +97,7 @@ void shellParseArgument(int argc, char *argv[], struct arguments *arguments) {
}
}
else
if
(
strcmp
(
argv
[
i
],
"-c"
)
==
0
)
{
if
(
i
<
argc
-
1
)
{
if
(
strlen
(
argv
[
++
i
])
>
TSDB_FILENAME_LEN
-
1
)
{
if
(
strlen
(
argv
[
++
i
])
>
=
TSDB_FILENAME_LEN
)
{
fprintf
(
stderr
,
"config file path: %s overflow max len %d
\n
"
,
argv
[
i
],
TSDB_FILENAME_LEN
-
1
);
exit
(
EXIT_FAILURE
);
}
...
...
src/kit/shell/src/shellLinux.c
浏览文件 @
d8e9cdf9
...
...
@@ -81,7 +81,7 @@ static error_t parse_opt(int key, char *arg, struct argp_state *state) {
fprintf
(
stderr
,
"Invalid path %s
\n
"
,
arg
);
return
-
1
;
}
if
(
strlen
(
full_path
.
we_wordv
[
0
])
>
TSDB_FILENAME_LEN
-
1
)
{
if
(
strlen
(
full_path
.
we_wordv
[
0
])
>
=
TSDB_FILENAME_LEN
)
{
fprintf
(
stderr
,
"config file path: %s overflow max len %d
\n
"
,
full_path
.
we_wordv
[
0
],
TSDB_FILENAME_LEN
-
1
);
wordfree
(
&
full_path
);
return
-
1
;
...
...
src/kit/shell/src/shellWindows.c
浏览文件 @
d8e9cdf9
...
...
@@ -77,7 +77,7 @@ void shellParseArgument(int argc, char *argv[], struct arguments *arguments) {
}
}
else
if
(
strcmp
(
argv
[
i
],
"-c"
)
==
0
)
{
if
(
i
<
argc
-
1
)
{
if
(
strlen
(
argv
[
++
i
])
>
TSDB_FILENAME_LEN
-
1
)
{
if
(
strlen
(
argv
[
++
i
])
>
=
TSDB_FILENAME_LEN
)
{
fprintf
(
stderr
,
"config file path: %s overflow max len %d
\n
"
,
argv
[
i
],
TSDB_FILENAME_LEN
-
1
);
exit
(
EXIT_FAILURE
);
}
...
...
src/kit/taosdump/taosdump.c
浏览文件 @
d8e9cdf9
...
...
@@ -177,8 +177,8 @@ typedef struct SDumpArguments {
char
*
password
;
uint16_t
port
;
// output file
char
output
[
TSDB_FILENAME_LEN
+
1
];
char
input
[
TSDB_FILENAME_LEN
+
1
];
char
output
[
TSDB_FILENAME_LEN
];
char
input
[
TSDB_FILENAME_LEN
];
char
*
encode
;
// dump unit option
bool
all_databases
;
...
...
src/mnode/inc/mnodeDef.h
浏览文件 @
d8e9cdf9
...
...
@@ -155,7 +155,7 @@ typedef struct {
typedef
struct
SDbObj
{
char
name
[
TSDB_DB_NAME_LEN
];
char
acct
[
TSDB_USER_LEN
+
1
];
char
acct
[
TSDB_USER_LEN
];
int64_t
createdTime
;
int32_t
cfgVersion
;
SDbCfg
cfg
;
...
...
@@ -172,9 +172,9 @@ typedef struct SDbObj {
}
SDbObj
;
typedef
struct
SUserObj
{
char
user
[
TSDB_USER_LEN
+
1
];
char
pass
[
TSDB_KEY_LEN
+
1
];
char
acct
[
TSDB_USER_LEN
+
1
];
char
user
[
TSDB_USER_LEN
];
char
pass
[
TSDB_KEY_LEN
];
char
acct
[
TSDB_USER_LEN
];
int64_t
createdTime
;
int8_t
superAuth
;
int8_t
writeAuth
;
...
...
@@ -203,8 +203,8 @@ typedef struct {
}
SAcctInfo
;
typedef
struct
SAcctObj
{
char
user
[
TSDB_USER_LEN
+
1
];
char
pass
[
TSDB_KEY_LEN
+
1
];
char
user
[
TSDB_USER_LEN
];
char
pass
[
TSDB_KEY_LEN
];
SAcctCfg
cfg
;
int32_t
acctId
;
int64_t
createdTime
;
...
...
src/mnode/inc/mnodeProfile.h
浏览文件 @
d8e9cdf9
...
...
@@ -22,7 +22,7 @@ extern "C" {
#include "mnodeDef.h"
typedef
struct
{
char
user
[
TSDB_USER_LEN
+
1
];
char
user
[
TSDB_USER_LEN
];
int8_t
killed
;
uint16_t
port
;
uint32_t
ip
;
...
...
src/mnode/src/mnodeProfile.c
浏览文件 @
d8e9cdf9
...
...
@@ -97,7 +97,7 @@ SConnObj *mnodeCreateConn(char *user, uint32_t ip, uint16_t port) {
.
connId
=
connId
,
.
stime
=
taosGetTimestampMs
()
};
tstrncpy
(
connObj
.
user
,
user
,
TSDB_USER_LEN
);
tstrncpy
(
connObj
.
user
,
user
,
sizeof
(
connObj
.
user
)
);
char
key
[
10
];
sprintf
(
key
,
"%u"
,
connId
);
...
...
@@ -222,7 +222,7 @@ static int32_t mnodeRetrieveConns(SShowObj *pShow, char *data, int32_t rows, voi
SConnObj
*
pConnObj
=
NULL
;
int32_t
cols
=
0
;
char
*
pWrite
;
char
ipStr
[
TSDB_IPv4ADDR_LEN
+
7
];
char
ipStr
[
TSDB_IPv4ADDR_LEN
+
6
];
while
(
numOfRows
<
rows
)
{
pShow
->
pIter
=
mnodeGetNextConn
(
pShow
->
pIter
,
&
pConnObj
);
...
...
@@ -235,12 +235,12 @@ static int32_t mnodeRetrieveConns(SShowObj *pShow, char *data, int32_t rows, voi
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
pConnObj
->
user
,
TSDB_USER_LEN
);
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
pConnObj
->
user
,
sizeof
(
pConnObj
->
user
)
);
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
snprintf
(
ipStr
,
TSDB_IPv4ADDR_LEN
+
6
,
"%s:%u"
,
taosIpStr
(
pConnObj
->
ip
),
pConnObj
->
port
);
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
ipStr
,
TSDB_IPv4ADDR_LEN
+
6
);
snprintf
(
ipStr
,
sizeof
(
ipStr
)
,
"%s:%u"
,
taosIpStr
(
pConnObj
->
ip
),
pConnObj
->
port
);
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
ipStr
,
sizeof
(
ipStr
)
);
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
...
...
@@ -342,7 +342,7 @@ static int32_t mnodeRetrieveQueries(SShowObj *pShow, char *data, int32_t rows, v
SConnObj
*
pConnObj
=
NULL
;
int32_t
cols
=
0
;
char
*
pWrite
;
char
ipStr
[
TSDB_IPv4ADDR_LEN
+
7
];
char
ipStr
[
TSDB_IPv4ADDR_LEN
+
6
];
while
(
numOfRows
<
rows
)
{
pShow
->
pIter
=
mnodeGetNextConn
(
pShow
->
pIter
,
&
pConnObj
);
...
...
@@ -358,12 +358,12 @@ static int32_t mnodeRetrieveQueries(SShowObj *pShow, char *data, int32_t rows, v
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
pConnObj
->
user
,
TSDB_USER_LEN
);
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
pConnObj
->
user
,
sizeof
(
pConnObj
->
user
)
);
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
snprintf
(
ipStr
,
TSDB_IPv4ADDR_LEN
+
6
,
"%s:%u"
,
taosIpStr
(
pConnObj
->
ip
),
pConnObj
->
port
);
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
ipStr
,
TSDB_IPv4ADDR_LEN
+
6
);
snprintf
(
ipStr
,
sizeof
(
ipStr
)
,
"%s:%u"
,
taosIpStr
(
pConnObj
->
ip
),
pConnObj
->
port
);
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
ipStr
,
sizeof
(
ipStr
)
);
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
...
...
@@ -463,7 +463,7 @@ static int32_t mnodeRetrieveStreams(SShowObj *pShow, char *data, int32_t rows, v
SConnObj
*
pConnObj
=
NULL
;
int32_t
cols
=
0
;
char
*
pWrite
;
char
ipStr
[
TSDB_IPv4ADDR_LEN
+
7
];
char
ipStr
[
TSDB_IPv4ADDR_LEN
+
6
];
while
(
numOfRows
<
rows
)
{
pShow
->
pIter
=
mnodeGetNextConn
(
pShow
->
pIter
,
&
pConnObj
);
...
...
@@ -479,12 +479,12 @@ static int32_t mnodeRetrieveStreams(SShowObj *pShow, char *data, int32_t rows, v
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
pConnObj
->
user
,
TSDB_USER_LEN
);
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
pConnObj
->
user
,
sizeof
(
pConnObj
->
user
)
);
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
snprintf
(
ipStr
,
TSDB_IPv4ADDR_LEN
+
6
,
"%s:%u"
,
taosIpStr
(
pConnObj
->
ip
),
pConnObj
->
port
);
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
ipStr
,
TSDB_IPv4ADDR_LEN
+
6
);
snprintf
(
ipStr
,
sizeof
(
ipStr
)
,
"%s:%u"
,
taosIpStr
(
pConnObj
->
ip
),
pConnObj
->
port
);
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
ipStr
,
sizeof
(
ipStr
)
);
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
...
...
src/mnode/src/mnodeTable.c
浏览文件 @
d8e9cdf9
...
...
@@ -201,7 +201,7 @@ static int32_t mnodeChildTableActionEncode(SSdbOper *pOper) {
assert
(
pTable
!=
NULL
&&
pOper
->
rowData
!=
NULL
);
int32_t
len
=
strlen
(
pTable
->
info
.
tableId
);
if
(
len
>
TSDB_TABLE_ID_LEN
)
return
TSDB_CODE_MND_INVALID_TABLE_ID
;
if
(
len
>
=
TSDB_TABLE_ID_LEN
)
return
TSDB_CODE_MND_INVALID_TABLE_ID
;
memcpy
(
pOper
->
rowData
,
pTable
->
info
.
tableId
,
len
);
memset
(
pOper
->
rowData
+
len
,
0
,
1
);
...
...
@@ -232,7 +232,7 @@ static int32_t mnodeChildTableActionDecode(SSdbOper *pOper) {
if
(
pTable
==
NULL
)
return
TSDB_CODE_MND_OUT_OF_MEMORY
;
int32_t
len
=
strlen
(
pOper
->
rowData
);
if
(
len
>
TSDB_TABLE_ID_LEN
)
{
if
(
len
>
=
TSDB_TABLE_ID_LEN
)
{
free
(
pTable
);
return
TSDB_CODE_MND_INVALID_TABLE_ID
;
}
...
...
@@ -453,7 +453,7 @@ static int32_t mnodeSuperTableActionEncode(SSdbOper *pOper) {
assert
(
pOper
->
pObj
!=
NULL
&&
pOper
->
rowData
!=
NULL
);
int32_t
len
=
strlen
(
pStable
->
info
.
tableId
);
if
(
len
>
TSDB_TABLE_ID_LEN
)
len
=
TSDB_CODE_MND_INVALID_TABLE_ID
;
if
(
len
>
=
TSDB_TABLE_ID_LEN
)
len
=
TSDB_CODE_MND_INVALID_TABLE_ID
;
memcpy
(
pOper
->
rowData
,
pStable
->
info
.
tableId
,
len
);
memset
(
pOper
->
rowData
+
len
,
0
,
1
);
...
...
@@ -477,7 +477,7 @@ static int32_t mnodeSuperTableActionDecode(SSdbOper *pOper) {
if
(
pStable
==
NULL
)
return
TSDB_CODE_MND_OUT_OF_MEMORY
;
int32_t
len
=
strlen
(
pOper
->
rowData
);
if
(
len
>
TSDB_TABLE_ID_LEN
){
if
(
len
>
=
TSDB_TABLE_ID_LEN
){
free
(
pStable
);
return
TSDB_CODE_MND_INVALID_TABLE_ID
;
}
...
...
@@ -1249,12 +1249,12 @@ static int32_t mnodeGetSuperTableMeta(SMnodeMsg *pMsg) {
pMeta
->
numOfColumns
=
htons
((
int16_t
)
pTable
->
numOfColumns
);
pMeta
->
tableType
=
pTable
->
info
.
type
;
pMeta
->
contLen
=
sizeof
(
STableMetaMsg
)
+
mnodeSetSchemaFromSuperTable
(
pMeta
->
schema
,
pTable
);
strncpy
(
pMeta
->
tableId
,
pTable
->
info
.
tableId
,
TSDB_TABLE_ID_LEN
);
tstrncpy
(
pMeta
->
tableId
,
pTable
->
info
.
tableId
,
sizeof
(
pMeta
->
tableId
)
);
pMsg
->
rpcRsp
.
len
=
pMeta
->
contLen
;
pMeta
->
contLen
=
htons
(
pMeta
->
contLen
);
pMsg
->
rpcRsp
.
rsp
=
pMeta
;
pMsg
->
rpcRsp
.
len
=
pMeta
->
contLen
;
mTrace
(
"stable:%s, uid:%"
PRIu64
" table meta is retrieved"
,
pTable
->
info
.
tableId
,
pTable
->
uid
);
return
TSDB_CODE_SUCCESS
;
...
...
@@ -2032,7 +2032,7 @@ static int32_t mnodeProcessMultiTableMetaMsg(SMnodeMsg *pMsg) {
pMultiMeta
->
numOfTables
=
0
;
for
(
int32_t
t
=
0
;
t
<
pInfo
->
numOfTables
;
++
t
)
{
char
*
tableId
=
(
char
*
)(
pInfo
->
tableIds
+
t
*
TSDB_TABLE_ID_LEN
+
1
);
char
*
tableId
=
(
char
*
)(
pInfo
->
tableIds
+
t
*
TSDB_TABLE_ID_LEN
);
SChildTableObj
*
pTable
=
mnodeGetChildTable
(
tableId
);
if
(
pTable
==
NULL
)
continue
;
...
...
src/mnode/src/mnodeUser.c
浏览文件 @
d8e9cdf9
...
...
@@ -315,7 +315,7 @@ static int32_t mnodeRetrieveUsers(SShowObj *pShow, char *data, int32_t rows, voi
cols
=
0
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
pUser
->
user
,
TSDB_USER_LEN
);
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
pUser
->
user
,
sizeof
(
pUser
->
user
)
);
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
...
...
@@ -336,7 +336,7 @@ static int32_t mnodeRetrieveUsers(SShowObj *pShow, char *data, int32_t rows, voi
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
pUser
->
acct
,
TSDB_USER_LEN
);
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
pUser
->
acct
,
sizeof
(
pUser
->
user
)
);
cols
++
;
numOfRows
++
;
...
...
src/plugins/http/inc/httpHandle.h
浏览文件 @
d8e9cdf9
...
...
@@ -67,7 +67,7 @@
#define HTTP_COMPRESS_IDENTITY 0
#define HTTP_COMPRESS_GZIP 2
#define HTTP_SESSION_ID_LEN (TSDB_USER_LEN
* 2 + 1
)
#define HTTP_SESSION_ID_LEN (TSDB_USER_LEN
+ TSDB_PASSWORD_LEN
)
typedef
enum
{
HTTP_CONTEXT_STATE_READY
,
...
...
@@ -84,7 +84,7 @@ typedef struct {
int
expire
;
int
access
;
void
*
taos
;
char
id
[
HTTP_SESSION_ID_LEN
+
1
];
char
id
[
HTTP_SESSION_ID_LEN
];
}
HttpSession
;
typedef
enum
{
...
...
src/plugins/http/src/gcHandle.c
浏览文件 @
d8e9cdf9
...
...
@@ -48,7 +48,7 @@ void gcInitHandle(HttpServer* pServer) { httpAddMethod(pServer, &gcDecodeMethod)
bool
gcGetUserFromUrl
(
HttpContext
*
pContext
)
{
HttpParser
*
pParser
=
&
pContext
->
parser
;
if
(
pParser
->
path
[
GC_USER_URL_POS
].
len
>
TSDB_USER_LEN
-
1
||
pParser
->
path
[
GC_USER_URL_POS
].
len
<=
0
)
{
if
(
pParser
->
path
[
GC_USER_URL_POS
].
len
>
=
TSDB_USER_LEN
||
pParser
->
path
[
GC_USER_URL_POS
].
len
<=
0
)
{
return
false
;
}
...
...
@@ -58,7 +58,7 @@ bool gcGetUserFromUrl(HttpContext* pContext) {
bool
gcGetPassFromUrl
(
HttpContext
*
pContext
)
{
HttpParser
*
pParser
=
&
pContext
->
parser
;
if
(
pParser
->
path
[
GC_PASS_URL_POS
].
len
>
TSDB_PASSWORD_LEN
-
1
||
pParser
->
path
[
GC_PASS_URL_POS
].
len
<=
0
)
{
if
(
pParser
->
path
[
GC_PASS_URL_POS
].
len
>
=
TSDB_PASSWORD_LEN
||
pParser
->
path
[
GC_PASS_URL_POS
].
len
<=
0
)
{
return
false
;
}
...
...
src/plugins/http/src/httpAuth.c
浏览文件 @
d8e9cdf9
...
...
@@ -89,7 +89,7 @@ bool httpParseTaosdAuthToken(HttpContext *pContext, char *token, int len) {
return
false
;
}
else
{
tstrncpy
(
pContext
->
user
,
descrypt
,
sizeof
(
pContext
->
user
));
tstrncpy
(
pContext
->
pass
,
descrypt
+
TSDB_USER_LEN
,
TSDB_PASSWORD_LEN
);
tstrncpy
(
pContext
->
pass
,
descrypt
+
TSDB_USER_LEN
,
sizeof
(
pContext
->
pass
)
);
httpTrace
(
"context:%p, fd:%d, ip:%s, taosd token:%s parsed success, user:%s"
,
pContext
,
pContext
->
fd
,
pContext
->
ipstr
,
token
,
pContext
->
user
);
...
...
@@ -100,14 +100,15 @@ bool httpParseTaosdAuthToken(HttpContext *pContext, char *token, int len) {
}
bool
httpGenTaosdAuthToken
(
HttpContext
*
pContext
,
char
*
token
,
int
maxLen
)
{
char
buffer
[
TSDB_USER_LEN
+
TSDB_PASSWORD_LEN
]
=
{
0
};
strncpy
(
buffer
,
pContext
->
user
,
TSDB_USER_LEN
);
strncpy
(
buffer
+
TSDB_USER_LEN
,
pContext
->
pass
,
TSDB_PASSWORD_LEN
);
char
buffer
[
sizeof
(
pContext
->
user
)
+
sizeof
(
pContext
->
pass
)
]
=
{
0
};
tstrncpy
(
buffer
,
pContext
->
user
,
sizeof
(
pContext
->
user
)
);
tstrncpy
(
buffer
+
sizeof
(
pContext
->
user
),
pContext
->
pass
,
sizeof
(
pContext
->
pass
)
);
char
*
encrypt
=
taosDesEncode
(
KEY_DES_4
,
buffer
,
TSDB_USER_LEN
+
TSDB_PASSWORD_LEN
);
char
*
base64
=
base64_encode
((
const
unsigned
char
*
)
encrypt
,
TSDB_USER_LEN
+
TSDB_PASSWORD_LEN
);
strncpy
(
token
,
base64
,
(
size_t
)
strlen
(
base64
));
size_t
len
=
strlen
(
base64
);
tstrncpy
(
token
,
base64
,
len
+
1
);
free
(
encrypt
);
free
(
base64
);
...
...
src/plugins/http/src/restHandle.c
浏览文件 @
d8e9cdf9
...
...
@@ -61,7 +61,7 @@ void restInitHandle(HttpServer* pServer) {
bool
restGetUserFromUrl
(
HttpContext
*
pContext
)
{
HttpParser
*
pParser
=
&
pContext
->
parser
;
if
(
pParser
->
path
[
REST_USER_URL_POS
].
len
>
TSDB_USER_LEN
-
1
||
pParser
->
path
[
REST_USER_URL_POS
].
len
<=
0
)
{
if
(
pParser
->
path
[
REST_USER_URL_POS
].
len
>
=
TSDB_USER_LEN
||
pParser
->
path
[
REST_USER_URL_POS
].
len
<=
0
)
{
return
false
;
}
...
...
@@ -71,7 +71,7 @@ bool restGetUserFromUrl(HttpContext* pContext) {
bool
restGetPassFromUrl
(
HttpContext
*
pContext
)
{
HttpParser
*
pParser
=
&
pContext
->
parser
;
if
(
pParser
->
path
[
REST_PASS_URL_POS
].
len
>
TSDB_PASSWORD_LEN
-
1
||
pParser
->
path
[
REST_PASS_URL_POS
].
len
<=
0
)
{
if
(
pParser
->
path
[
REST_PASS_URL_POS
].
len
>
=
TSDB_PASSWORD_LEN
||
pParser
->
path
[
REST_PASS_URL_POS
].
len
<=
0
)
{
return
false
;
}
...
...
src/plugins/http/src/tgHandle.c
浏览文件 @
d8e9cdf9
...
...
@@ -306,21 +306,21 @@ void tgCleanupHandle() {
bool
tgGetUserFromUrl
(
HttpContext
*
pContext
)
{
HttpParser
*
pParser
=
&
pContext
->
parser
;
if
(
pParser
->
path
[
TG_USER_URL_POS
].
len
>
TSDB_USER_LEN
-
1
||
pParser
->
path
[
TG_USER_URL_POS
].
len
<=
0
)
{
if
(
pParser
->
path
[
TG_USER_URL_POS
].
len
>
=
TSDB_USER_LEN
||
pParser
->
path
[
TG_USER_URL_POS
].
len
<=
0
)
{
return
false
;
}
tstrncpy
(
pContext
->
user
,
pParser
->
path
[
TG_USER_URL_POS
].
pos
,
TSDB_USER_LEN
);
tstrncpy
(
pContext
->
user
,
pParser
->
path
[
TG_USER_URL_POS
].
pos
,
sizeof
(
pContext
->
user
)
);
return
true
;
}
bool
tgGetPassFromUrl
(
HttpContext
*
pContext
)
{
HttpParser
*
pParser
=
&
pContext
->
parser
;
if
(
pParser
->
path
[
TG_PASS_URL_POS
].
len
>
TSDB_PASSWORD_LEN
-
1
||
pParser
->
path
[
TG_PASS_URL_POS
].
len
<=
0
)
{
if
(
pParser
->
path
[
TG_PASS_URL_POS
].
len
>
=
TSDB_PASSWORD_LEN
||
pParser
->
path
[
TG_PASS_URL_POS
].
len
<=
0
)
{
return
false
;
}
tstrncpy
(
pContext
->
pass
,
pParser
->
path
[
TG_PASS_URL_POS
].
pos
,
TSDB_PASSWORD_LEN
);
tstrncpy
(
pContext
->
pass
,
pParser
->
path
[
TG_PASS_URL_POS
].
pos
,
sizeof
(
pContext
->
pass
)
);
return
true
;
}
...
...
src/plugins/monitor/src/monitorMain.c
浏览文件 @
d8e9cdf9
...
...
@@ -175,7 +175,7 @@ static void dnodeBuildMonitorSql(char *sql, int32_t cmd) {
", totalConns smallint, maxConns smallint"
", accessState smallint"
") tags (acctId binary(%d))"
,
tsMonitorDbName
,
TSDB_USER_LEN
+
1
);
tsMonitorDbName
,
TSDB_USER_LEN
);
}
else
if
(
cmd
==
MONITOR_CMD_CREATE_TB_ACCT_ROOT
)
{
snprintf
(
sql
,
SQL_LENGTH
,
"create table if not exists %s.acct_%s using %s.acct tags('%s')"
,
tsMonitorDbName
,
"root"
,
tsMonitorDbName
,
"root"
);
...
...
@@ -183,7 +183,7 @@ static void dnodeBuildMonitorSql(char *sql, int32_t cmd) {
snprintf
(
sql
,
SQL_LENGTH
,
"create table if not exists %s.slowquery(ts timestamp, username "
"binary(%d), created_time timestamp, time bigint, sql binary(%d))"
,
tsMonitorDbName
,
TSDB_TABLE_ID_LEN
,
TSDB_SLOW_QUERY_SQL_LEN
);
tsMonitorDbName
,
TSDB_TABLE_ID_LEN
-
1
,
TSDB_SLOW_QUERY_SQL_LEN
);
}
else
if
(
cmd
==
MONITOR_CMD_CREATE_TB_LOG
)
{
snprintf
(
sql
,
SQL_LENGTH
,
"create table if not exists %s.log(ts timestamp, level tinyint, "
...
...
src/util/src/tconfig.c
浏览文件 @
d8e9cdf9
...
...
@@ -242,7 +242,7 @@ void taosReadGlobalLogCfg() {
wordexp_t
full_path
;
wordexp
(
configDir
,
&
full_path
,
0
);
if
(
full_path
.
we_wordv
!=
NULL
&&
full_path
.
we_wordv
[
0
]
!=
NULL
)
{
if
(
strlen
(
full_path
.
we_wordv
[
0
])
>
TSDB_FILENAME_LEN
-
1
)
{
if
(
strlen
(
full_path
.
we_wordv
[
0
])
>
=
TSDB_FILENAME_LEN
)
{
printf
(
"
\n
config file: %s path overflow max len %d, all variables are set to default
\n
"
,
full_path
.
we_wordv
[
0
],
TSDB_FILENAME_LEN
-
1
);
wordfree
(
&
full_path
);
return
;
...
...
tests/pytest/table/boundary.py
浏览文件 @
d8e9cdf9
...
...
@@ -141,7 +141,7 @@ class TDTestCase:
tdSql
.
prepare
()
# 8 bytes for timestamp
maxRowSize
=
6553
6
-
8
maxRowSize
=
6553
5
-
8
maxCols
=
self
.
getLimitFromSourceCode
(
'TSDB_MAX_COLUMNS'
)
-
1
# for binary cols, 2 bytes are used for length
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录