JlmPackCoreSDKV1.0帮助文档

1. 概述

JlmPackCoreSDKV1.0 是由湖南遥昇通信技术有限公司开发的一个用于文件压缩、加密、管理和浏览的软件库。它支持跨平台操作,包括Linux和Windows系统。
JlmPack工具下载地址https://jlmpack.com

 2. 版本信息

- **作者**:王杰林

- **编写日期**:2024-06-20

- **版本**:1.0

- **版权所有**:湖南遥昇通信技术有限公司

- **联系邮箱**:254908447@qq.com

 3. 功能特点

- 文件和目录的遍历与压缩

- 支持加密压缩和安全解压

- 提供哈希算法和对称加密算法

- 日志记录操作历史

- 支持数字证书和授权管理

 4. 配置信息

参见 `Config.h` 文件,了解JLMPack的核心宏定义和配置参数。

 5. 数据结构

 5.1. JLM_FILE

- `jlmHeadSign`: 文件头标识。

- `consistencyMark`: 用于统一主包和子包的一致性标记。

- `packID`: 包编号。

- `catalogBytesLength`: 目录的原始字节长度。

- `packSize`: 根据目录长度切割的子包数量。

- `packBytesLength`: 单个包的字节数。

- `encryptionWindow`: 加密轮函数的字节窗口。

- `extraSize`: JLM_EXTRA的字节数。

- `fileBytesLength`: 压缩后的总字节长度。

- `license`: 数字证书的数字指纹。

 5.2. JLM_CATALOG

- `ID`: 目录或文件的ID。

- `FID`: 上一层目录的ID。

- `type`: 文件类型标识。

- `name`: 文件或目录的名称。

- `byteslength`: 原始文件的字节长度。

- `hv`: 哈希值。

- `time`: 文件创建的时间。

 5.3. JLM_CATALOGINFOR

包含目录信息,如ID、父ID、目录名称、字节长度、创建时间、子目录队列和子目录列表规模。

 5.4. JLM_EXTRA

版权控制结构体,包含版权拥有人、颁布人、联系方式、版本号、发布时间戳、授权分类和数字签名。

 5.5. JLM_LOG

日志结构体,记录操作类型、一致性标记、文件名和时间戳。

 5.6. VARIABLES

传递给函数的参数变量,包括授权文件路径、总字节数、累计字节数、随机数数组、密码数组、文件路径、ID列表等。

6. API 接口使用指南

6.1. 获取授权证书数字签名

JlmPack_GetLicense

  1. 功能: 从授权文件中获取数字签名。
  2. 输入参数VARIABLES* vars,包含授权文件路径和其他必要信息。
  3. 返回值: 错误标识,0 表示成功,大于 1 表示错误。

6.2. JLMHA哈希算法

JlmPack_JLMHA

功能: 计算数据的哈希值。

输入参数:

  1. RandomByte: 随机字节,用于哈希计算。
  2. InByteArray: 输入数据。
  3. InByteArray_size: 输入数据大小。
  4. HashByteArray: 存储哈希结果的缓冲区。
  5. HashByteArray_size: 哈希结果长度。
  6. 返回值: 错误标识。

6.3. JLMSE对称加密算法

JlmPack_JLMSE

功能: 对数据进行加密或解密。

输入参数:

  1. RandomBytes: 随机数,用于密钥生成。
  2. RandomBytes_size: 随机数长度。
  3. Passwords: 加密或解密密码。
  4. Passwords_size: 密码长度。
  5. InByteArray: 输入数据。
  6. InByteArray_size: 输入数据大小。
  7. OutByteArray: 输出数据缓冲区。
  8. OutByteArray_size: 输出数据大小指针。
  9. model: 加密模式,0 为加密,1 为解密。
  10. 返回值: 错误标识。

6.4. 创建JLM压缩包

JlmPack_Create

  1. 功能: 根据提供的参数创建JLM压缩包。
  2. 输入参数VARIABLES* vars,包含创建压缩包所需的所有信息。
  3. 返回值: 错误标识和日志信息。

6.5. 获取权限值

JlmPack_GetRule

  1. 功能: 获取JLM压缩包的权限值。
  2. 输入参数VARIABLES* vars,包含压缩包路径等信息。
  3. 返回值: 错误标识和权限值。

6.6. 解包JLM压缩包

JlmPack_Unpack

  1. 功能: 解压和解密JLM压缩包。
  2. 输入参数VARIABLES* vars,包含解压所需的所有信息。
  3. 返回值: 错误标识。

6.7. 向JLM文件追加文件

JlmPack_Insert

  1. 功能: 向JLM压缩包中追加新文件或目录。
  2. 输入参数VARIABLES* vars,包含追加所需的信息。
  3. 返回值: 错误标识。

6.8. 删除JLM压缩包中的文件

JlmPack_Delete

  1. 功能: 删除JLM压缩包中的指定文件或目录。
  2. 输入参数VARIABLES* vars,包含待删除项的信息。
  3. 返回值: 错误标识。

6.9. 重命名JLM压缩包中的项

JlmPack_Rename

  1. 功能: 重命名JLM压缩包中的文件或目录。
  2. 输入参数VARIABLES* vars,包含待重命名项的信息及新名称。
  3. 返回值: 错误标识。

6.10. 预览JLM压缩包目录

JlmPack_BrowseCatalog

  1. 功能: 预览JLM压缩包中的目录结构。
  2. 输入参数VARIABLES* vars,包含预览所需的信息。
  3. 返回值: 目录信息结构体指针和错误标识。

7.10.错误编号

下面是各个编号的说明:

400:创建目录时输入的const char** pathList为NULL,或则unsigned int listSize<= 0,即无效输入

401:创建目录时unsigned int listSize>CATALOG_MAX_LIMIT,即列表中的文件目录数大于了Config.h中设定的值,可调整Config.h中CATALOG_MAX_LIMIT的值

402:创建目录时CatalogInfor的内存开辟失败

403:创建目录时CatalogInfor.urlsList或者CatalogInfor.CatalogList的内存开辟失败

404:无

405:所有子目录超过了CATALOG_MAX_LIMIT的限制,可调整Config.h中CATALOG_MAX_LIMIT的值

406:创建目录时CatalogInfor的内存开辟失败

407:创建目录时CatalogInfor.urlsList或者CatalogInfor.CatalogList的内存开辟失败

408:重命名时输入的CatalogInfor* cataloginfor为NULL

409:重命名时输入的const char* newName(名字)为空

410:重命名时输入的int ID小于等于0,注意根目录禁止重命名,默认就是root

411:重命名时输入的int ID大于cataloginfor->MaxID,说明不存在这样的目录

412:重命名时同级目录下存在与newName相同的名字

413:目录序列化时输入CatalogInfor* catalogInfor为NULL或者catalogInfor->CatalogListSize <= 0

414:目录序列化时输入的unsigned int* BytesArrayLength为NULL,这个参数必须传递指针,需要返回实际序列化后的长度

415:目录序列化时返回数组BytesArray内存开辟失败

416:目录逆序列化时输入unsigned char* BytesArray为NULL或者unsigned int BytesArrayLength <= 0

417:目录逆序列化时返回的cataloginfor内存开辟失败

418:目录逆序列化时目录的数量超过了CATALOG_MAX_LIMIT的限制或cataloginfor->CatalogListSize <= 0或cataloginfor->MaxID > CATALOG_MAX_LIMIT或cataloginfor->MaxID <= 0,可调整Config.h中CATALOG_MAX_LIMIT的值

419:目录逆序列化后的目录字节数与实际输入的字节数不符合

420:目录逆序列化时cataloginfor->CatalogList内存开辟失败

421:根据最大ID创建目录时输入的const char** pathList为NULL,或则unsigned int listSize<= 0,即无效输入

422:根据最大ID创建目录时输入的listSize>CATALOG_MAX_LIMIT,即列表中的文件目录数大于了Config.h中设定的值,可调整Config.h中CATALOG_MAX_LIMIT的值

423:根据最大ID创建目录时返回的cataloginfor内存开辟失败

424:根据最大ID创建目录时CatalogInfor.urlsList或者CatalogInfor.CatalogList的内存开辟失败

425:根据最大ID创建目录时所有子目录超过了CATALOG_MAX_LIMIT的限制,可调整Config.h中CATALOG_MAX_LIMIT的值

426:根据最大ID创建目录时CatalogInfor的内存开辟失败

427:根据最大ID创建目录时CatalogInfor.urlsList或者CatalogInfor.CatalogList的内存开辟失败

428:追加目录时输入的oldCatalogInfor为NULL

429:追加目录时输入的thisID < 0或thisID > oldCatalogInfor->MaxID,即无效目录的ID号,注意允许thisID = 0,即追加到根目录下

430:追加目录时判断新增的根目录是否与thisID下的子目录存在相同的名字

431:追加目录时CatalogInfor* cataloginfor内存开辟失败

432:追加目录时cataloginfor->urlsList和cataloginfor->CatalogList内存开辟失败

433:删除目录时输入的oldCatalogInfor为NULL

434:删除目录时输入的delIdList == NULL 或 listSize <= 0

435:删除目录时输入的delIdList中存在0号ID,根目录删除意思就是整个jlm文件删除,无需任何的目录操作

436:删除目录时CatalogInfor* tmpNewCatalogInfor内存开辟失败

437:删除目录时CatalogInfor** OutCatalogInfor内存开辟失败

438:删除目录时OutCatalogInfor[0]和OutCatalogInfor[1]内存开辟失败

439:删除目录时tmpNewCatalogInfor->CatalogList或OutCatalogInfor[1]->CatalogList内存开辟失败

440:删除目录时tmpNewCatalogInfor->urlsList或OutCatalogInfor[0]->urlsList内存开辟失败

441:删除目录时OutCatalogInfor[0]->CatalogList内存开辟失败

1100:JLMHA函数输入的InByteArray == NULL或InByteArray_size == 0

1101:JLMHA函数输入的HashByteArray == NULL或HashByteArray_size == 0

1102:JLMHA函数编码失败

1200:JLMSE函数输入的InByteArray == NULL或InByteArray_size == 0

1201:JLMSE函数输入的OutByteArray == NULL或OutByteArray_size == 0

1202:JLMSE函数输入的model无效,只能输入0或1

1300:JlmPack_Create函数输入的VARIABLES* vars为NULL

1301:JlmPack_Create函数输入的vars->log为NULL

1302:JlmPack_Create函数输入的vars->jlmFile为NULL

1303:JlmPack_Create函数输入的vars->pathList == NULL 或 vars->pathListSize == 0

1304:JlmPack_Create函数输入的vars->jlmFileUrl为NULL

1305:JlmPack_Create函数输入的vars->InByteArray为NULL

1306:JlmPack_Create函数输入的vars->OutByteArray为NULL

1307:JlmPack_Create函数输入的vars->RandomBytes == NULL 或 vars->RandomBytes_size != RANDOM_BYTE_LIMIT

1308:JlmPack_Create函数写文件指针为NULL

1309:JlmPack_Create函数写文件失败,写入文件的长度与待写入的长度sizeof(JLM_FILE)不一致

1310:JlmPack_Create函数写文件失败,写入文件的长度与待写入的目录长度不一致

1311:JlmPack_Create函数写文件指针为NULL

1312:JlmPack_Create函数写文件失败,写入文件的长度与待写入的长度sizeof(JLM_FILE)不一致

1313:JlmPack_Create函数写文件失败,写入文件的长度与待写入的目录长度不一致

1320:编码函数当前待编码的文件目录Catalog* catalog为NULL

1321:编码函数FILE* readfile为NULL

1322:编码函数杰林码编码器WJLWMCoder* coder内存开辟失败

1340:编码函数写文件失败,写入文件的长度与待写入的长度不一致

1341:编码函数写文件失败,写入文件的长度与待写入的长度不一致

1342:编码函数写文件失败,写入文件的长度与待写入的长度不一致

1343:编码函数写文件失败,写入文件的长度与待写入的长度不一致

1400:JlmPack_Unpack函数输入的VARIABLES* vars为NULL

1401:JlmPack_Unpack函数输入的vars->pathList == NULL或vars->pathListSize == 0或vars->pathListSize >= 2

1402:JlmPack_Unpack函数输入的vars->jlmFile为NULL

1403:JlmPack_Unpack函数输入的vars->IdList == NULL或vars->IdList_Size <= 0

1404:JlmPack_Unpack函数输入的vars->jlmFileUrl为NULL

1405:JlmPack_Unpack函数输入的vars->InByteArray为NULL

1406:JlmPack_Unpack函数输入的vars->OutByteArray为NULL

1407:JlmPack_Unpack函数输入的vars->jlmExtra为NULL

1408:JlmPack_Unpack函数输入的vars->RandomBytes == NULL或vars->RandomBytes_size != RANDOM_BYTE_LIMIT

1409:JlmPack_Unpack函数jlmpack为NULL或tmpJlmPack为NULL或pathsArray为NULL

1410:JlmPack_Unpack函数pathsArray[i]为NULL

1411:JlmPack_Unpack函数realJlmFilePath为NULL

1412:JlmPack_Unpack函数realJlmFilePath[i]为NULL

1413:JlmPack_Unpack函数FILE* readfile为NULL

1414:JlmPack_Unpack函数读取文件失败,读取的长度错误

1415:JlmPack_Unpack函数FILE* readfile为NULL

1416:JlmPack_Unpack函数读取文件失败,读取的长度错误

1417:JlmPack_Unpack函数输入的vars->InByteArray_Size和vars->OutByteArray_Size错误,必须大于等于vars->jlmFile->encryptionWindow + 2097152

1418:JlmPack_Unpack函数读取文件失败,读取的长度错误

1419:JlmPack_Unpack函数密码错误或文件不是JLM文件

1420:JlmPack_Unpack函数密码错误或文件不是JLM文件

1421:JlmPack_Unpack函数FILE* readfile为NULL

1422:JlmPack_Unpack函数读取文件失败,读取的长度错误

1423:JlmPack_Unpack函数FILE* readfile为NULL

1424:JlmPack_Unpack函数读取文件失败,读取的长度错误

1425:JlmPack_Unpack函数FILE* readfile为NULL

1426:JlmPack_Unpack函数读取文件失败,读取的长度错误

1440:JLM文件遍历函数目录路径错误

1441:JLM文件遍历函数FILE* readfile为NULL

1460:解码函数WJLWMCoder* coder内存开辟失败

1461:解码函数FILE* writefile为NULL

1462:解码函数FILE* readfile为NULL

1463:解码函数读取文件失败,读取的长度错误

1464:解码函数FILE* readfile为NULL

1465:解码函数读取文件失败,读取的长度错误

1466:解码函数写文件失败,写入文件的长度与待写入的长度不一致

1467:解码函数,输入的密码错误或密文错误

1468:解码函数写文件失败,写入文件的长度与待写入的长度不一致

1469:解码函数,输入的密码错误或密文错误

1470:解码函数写文件失败,写入文件的长度与待写入的长度不一致

1471:解码函数FILE* readfile为NULL

1472:解码函数读取文件失败,读取的长度错误

1473:解码函数读取文件失败,读取的长度错误

1500:JlmPack_Insert函数输入的VARIABLES* vars为NULL

1501:JlmPack_Insert函数输入的vars->pathList == NULL或vars->pathListSize == 0

1502:JlmPack_Insert函数输入的vars->jlmFileUrl为NULL

1503:JlmPack_Insert函数输入的vars->IdList == NULL或vars->IdList_Size == 0或vars->IdList_Size >= 2

1504:JlmPack_Insert函数输入的vars->jlmFile为NULL

1505:JlmPack_Insert函数输入的vars->InByteArray为NULL

1506:JlmPack_Insert函数输入的vars->OutByteArray为NULL

1507:JlmPack_Insert函数输入的vars->jlmExtra为NULL

1508:JlmPack_Insert函数输入的vars->RandomBytes == NULL或vars->RandomBytes_size != RANDOM_BYTE_LIMIT

1509:JlmPack_Insert函数jlmpack == NULL或tmpJlmPack == NULL

1510:JlmPack_Insert函数realJlmFilePath == NULL或newJlmFilePath == NULL

1511:JlmPack_Insert函数realJlmFilePath[i] == NULL或newJlmFilePath[i] == NULL

1512:JlmPack_Insert函数FILE* readfile为NULL

1513:JlmPack_Insert函数FILE* readfile为NULL

1514:JlmPack_Insert函数读取文件失败,读取的长度错误

1515:JlmPack_Insert函数读取文件失败,读取的长度错误

1516:JlmPack_Insert函数密码或密文错误

1517:JlmPack_Insert函数密码或密文错误

1518:JlmPack_Insert函数FILE* readfile为NULL

1519:JlmPack_Insert函数读取文件失败,读取的长度错误

1520:JlmPack_Insert函数FILE* readfile为NULL

1521:JlmPack_Insert函数读取文件失败,读取的长度错误

1522:JlmPack_Insert函数FILE* readfile为NULL

1523:JlmPack_Insert函数读取文件失败,读取的长度错误

1524:JlmPack_Insert函数FILE* writefile为NULL

1525:JlmPack_Insert函数写文件失败,写入文件的长度与待写入的长度不一致

1526:JlmPack_Insert函数写文件失败,写入文件的长度与待写入的长度不一致

1527:JlmPack_Insert函数FILE* writefile为NULL

1528:JlmPack_Insert函数写文件失败,写入文件的长度与待写入的长度不一致

1529:JlmPack_Insert函数写文件失败,写入文件的长度与待写入的长度不一致

1530:JlmPack_Insert函数FILE* readfile为NULL

1560:文件复制函数FILE* readfile为NULL

1561:文件复制函数读取文件失败,读取的长度错误

1564:文件复制函数FILE* readfile为NULL

1565:文件复制函数读取文件失败,读取的长度错误

1566:文件复制函数读取文件失败,读取的长度错误

1580:文件复制函数FILE* readfile为NULL

1581:文件复制函数FILE* writefile为NULL

1583:文件复制函数写文件失败,写入文件的长度与待写入的长度不一致

1600:JlmPack_Delete函数输入的VARIABLES* vars为NULL

1601:JlmPack_Delete函数输入的vars->jlmFileUrl为NULL

1602:JlmPack_Delete函数输入的vars->IdList == NULL或vars->IdList_Size == 0

1603:JlmPack_Delete函数输入的vars->jlmFile为NULL

1604:JlmPack_Delete函数输入的vars->InByteArray为NULL

1605:JlmPack_Delete函数输入的vars->OutByteArray为NULL

1606:JlmPack_Delete函数输入的vars->jlmExtra为NULL

1607:JlmPack_Delete函数输入的vars->RandomBytes == NULL或vars->RandomBytes_size != RANDOM_BYTE_LIMIT

1608:JlmPack_Delete函数输入的vars->IdList中存在为0的ID号,如果删除的ID存在根目录,请直接删除整个JLM文件

1609:JlmPack_Delete函数jlmpack == NULL或tmpJlmPack == NULL,内存开辟失败

1610:JlmPack_Delete函数realJlmFilePath == NULL或newJlmFilePath == NULL,内存开辟失败

1611:JlmPack_Delete函数realJlmFilePath[i] == NULL或newJlmFilePath[i] == NULL,内存开辟失败

1612:JlmPack_Delete函数FILE* readfile为NULL

1613:JlmPack_Delete函数FILE* readfile为NULL

1614:JlmPack_Delete函数读取文件失败,读取的长度错误

1615:JlmPack_Delete函数读取文件失败,读取的长度错误

1616:JlmPack_Delete函数密码或密文错误

1617:JlmPack_Delete函数密码或密文错误

1618:JlmPack_Delete函数FILE* readfile为NULL

1619:JlmPack_Delete函数读取文件失败,读取的长度错误

1620:JlmPack_Delete函数FILE* readfile为NULL

1621:JlmPack_Delete函数读取文件失败,读取的长度错误

1622:JlmPack_Delete函数FILE* readfile为NULL

1623:JlmPack_Delete函数读取文件失败,读取的长度错误

1624:JlmPack_Delete函数FILE* writefile为NULL

1625:JlmPack_Delete函数写文件失败,写入文件的长度与待写入的长度不一致

1626:JlmPack_Delete函数写文件失败,写入文件的长度与待写入的长度不一致

1627:JlmPack_Delete函数FILE* writefile为NULL

1628:JlmPack_Delete函数写文件失败,写入文件的长度与待写入的长度不一致

1629:JlmPack_Delete函数写文件失败,写入文件的长度与待写入的长度不一致

1630:JlmPack_Delete函数FILE* readfile为NULL

1700:JlmPack_Rename函数输入的VARIABLES* vars为NULL

1701:JlmPack_Rename函数输入的vars->jlmFileUrl为NULL

1702:JlmPack_Rename函数输入的vars->pathList为NULL或vars->pathListSize == 0或vars->pathListSize >= 2

1703:JlmPack_Rename函数输入的vars->IdList为NULL或vars->IdList_Size == 0或vars->IdList_Size >= 2

1704:JlmPack_Rename函数输入的vars->jlmFile为NULL

1705:JlmPack_Rename函数输入的vars->InByteArray为NULL

1706:JlmPack_Rename函数输入的vars->OutByteArray为NULL

1707:JlmPack_Rename函数输入的vars->RandomBytes为NULL或vars->RandomBytes_size != RANDOM_BYTE_LIMIT

1708:JlmPack_Rename函数输入的vars->IdList[0] == 0,根目录禁止重命名

1709:JlmPack_Rename函数jlmpack为NULL或tmpJlmPack为NULL,内存开辟失败

1710:JlmPack_Rename函数realJlmFilePath为NULL,内存开辟失败

1711:JlmPack_Rename函数realJlmFilePath[i]为NULL,内存开辟失败

1712:JlmPack_Rename函数FILE* readfile为NULL

1713:JlmPack_Rename函数FILE* readfile为NULL

1714:JlmPack_Rename函数输入的vars->InByteArray_Size和vars->OutByteArray_Size错误,必须大于等于vars->jlmFile->encryptionWindow + 2097152

1715:JlmPack_Rename函数读取文件失败,读取的长度错误

1716:JlmPack_Rename函数密码或密文错误

1717:JlmPack_Rename函数密码或密文错误

1718:JlmPack_Rename函数重命名无效,名字过长,超过了原来目录所能存放的长度

1719:JlmPack_Delete函数FILE* writefile为NULL

1720:JlmPack_Delete函数写文件失败,写入文件的长度与待写入的长度不一致

1800:JlmPack_BrowseCatalog函数输入的VARIABLES* vars为NULL

1801:JlmPack_BrowseCatalog函数输入的vars->jlmFileUrl为NULL

1802:JlmPack_BrowseCatalog函数输入的vars->IdList为NULL或vars->IdList_Size == 0或vars->IdList_Size >= 2

1803:JlmPack_BrowseCatalog函数输入的vars->jlmFile为NULL

1804:JlmPack_BrowseCatalog函数输入的vars->InByteArray为NULL

1805:JlmPack_BrowseCatalog函数输入的vars->OutByteArray为NULL

1806:JlmPack_BrowseCatalog函数输入的vars->RandomBytes为NULL或vars->RandomBytes_size != RANDOM_BYTE_LIMIT

1807:JlmPack_BrowseCatalog函数jlmpack为NULL或tmpJlmPack为NULL,内存开辟失败

1808:JlmPack_BrowseCatalog函数realJlmFilePath为NULL,内存开辟失败

1809:JlmPack_BrowseCatalog函数realJlmFilePath[i]为NULL,内存开辟失败

1810:JlmPack_BrowseCatalog函数FILE* readfile为NULL

1811:JlmPack_BrowseCatalog函数FILE* readfile为NULL

1812:JlmPack_BrowseCatalog函数输入的vars->InByteArray_Size和vars->OutByteArray_Size错误,必须大于等于vars->jlmFile->encryptionWindow + 2097152

1813:JlmPack_BrowseCatalog函数读取文件失败,读取的长度错误

1814:JlmPack_BrowseCatalog函数密码或密文错误

1815:JlmPack_BrowseCatalog函数密码或密文错误

1816:JlmPack_BrowseCatalog函数JLM_CATALOGINFOR* outCatalogs为NULL,内存开辟失败

1817:JlmPack_BrowseCatalog函数outCatalogs->CatalogList为NULL,内存开辟失败

1900:JlmPack_GetLicense函数输入的VARIABLES* vars为NULL

1901:JlmPack_GetLicense函数输入的vars->licenseFilePath为NULL

1902:JlmPack_GetLicense函数输入的vars->license为NULL

1903:JlmPack_GetLicense函数FILE* readfile为NULL,一般是指vars->licenseFilePath路径错误

1904:JlmPack_GetLicense函数vars->licenseFilePath对应的文件错误或无效,或为空

2302:JlmPack_GetLicense函数内存开辟失败

2303:JlmPack_GetLicense函数FILE* readfile为NULL

2304:JlmPack_GetLicense函数证书过期了

2000:JlmPack_GetRule函数输入的VARIABLES* vars为NULL

2001:JlmPack_GetRule函数输入的vars->jlmFileUrl为NULL

2002:JlmPack_GetRule函数输入的vars->jlmFile为NULL

2003:JlmPack_GetRule函数输入的vars->InByteArray为NULL

2004:JlmPack_GetRule函数输入的vars->OutByteArray为NULL

2005:JlmPack_GetRule函数输入的vars->RandomBytes为NULL或vars->RandomBytes_size != RANDOM_BYTE_LIMIT

2006:JlmPack_GetRule函数jlmpack为NULL或tmpJlmPack为NULL,内存开辟失败

2007:JlmPack_GetRule函数realJlmFilePath为NULL,内存开辟失败

2008:JlmPack_GetRule函数realJlmFilePath[i]为NULL,内存开辟失败

2009:JlmPack_GetRule函数FILE* readfile为NULL

2010:JlmPack_GetRule函数FILE* readfile为NULL

2011:JlmPack_GetRule函数输入的vars->InByteArray_Size和vars->OutByteArray_Size错误,必须大于等于vars->jlmFile->encryptionWindow + 2097152

2012:JlmPack_GetRule函数读取文件失败,读取的长度错误

2013:JlmPack_GetRule函数密码或密文错误

2014:JlmPack_GetRule函数密码或密文错误

8. 配置参数

Config.h 文件包含了JLMPack SDK的配置参数,这些参数可以根据您的需求进行调整。

9. 注意事项

  • 确保在使用加密和解密功能时,提供正确的密码和随机数。
  • 授权文件必须有效,且路径正确无误。
  • 遵守版权声明和授权协议。

10. 版权声明

本文档和JlmPackCoreSDKV1.0版权所有,未经湖南遥昇通信技术有限公司书面许可,禁止复制、传播、修改或用于商业用途。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值