Skip to content
This repository was archived by the owner on Jan 29, 2024. It is now read-only.

kao-chinaklp/MySocket

Repository files navigation

关于这个项目

就如简介所说,这是个用来练手的socket项目

构成

主体:MySocket
更新器:MySocket-updater
https://github.com/kao-chinaklp/MySocket-Updater

关于本体

本体使用了curl、json、openssl和sqlit3的库,更新器使用了curl和json的库,但库本体不保留在项目中,编译/运行的时候记得自行添加。

更新日志

2023 6.24

立项(实际上应该更早)

2023 7.12

1.优化了默认配置文件的写入内容;
2.日志文件不再生成在与可执行文件同一目录下而是统一放在logs文件夹;
3.修复了log系统不能正常关闭的问题;
4.修复了MySocket中正则表达式不能正常发挥作用的问题;
6.修复了mysqlpool中正则表达式不能正常发挥作用的问题;
7.将SSL的加密方式改为更安全的TLS;
8.修改了CMakeLists.txt中导致不能正常生成可执行文件的内容。

2023 7.13

1.遇到错误时不是直接退出程序而是采用异常处理。(感谢moyongxin的帮助);
2.将所有模块的关闭函数放在析构函数中,使其能自动关闭;
3.完善了mysocket中socket在不同平台下的相应的代码;
4.解决了重复释放空间导致的段错误;
5.在Service模块中所有子模块不再是成员变量而是指针;
6.添加对线程池的线程状态状态修改的功能,并解决了原线程池中有线程没有完成任务就被释放的问题。
7.把所有静态文本单独放在一个文件(context.h)里面。

2023 7.14

1.修复了了Windows下socket销毁时可能会产生的段错误;
2.修复了使用证书文件时,没有加载密码的问题;
3.更安全地释放所有模块的空间;
4.修复了线程池退出时段错误的问题;
5.MySQLPool中线程池的初始化没有传参;
6.意外的代码顺序导致线程池死锁。

2023 7.22

1.修复了配置文件中server-ip无法使用默认值的问题;
2.优化了socket读取配置文件时合法性的判断。

2023 7.23

1.正式修复证书无法正确生成的功能;
2.添加了Readme的使用前必读文件;
3.添加了生成证书时手动输入持有者信息的功能。

2023 7.27

1.将版本号独立出来(context.h);
2.日志系统添加了Input选项,修改了一处文本错误;
3.日志系统添加了部分日志的色彩;
4.完成了自动更新的功能。

2023 7.28

1.完成了数据库操作的相关功能;
2.添加了账号注销的功能;
3.会自动识别校验数据表的正确性;
4.更新了配置文件的格式;
5.添加了一处注释(service.cpp)。

2023.8.6

1.重写了数据库操作部分;
2.修复了ssl非正常销毁的漏洞。

2023.8.8

1.给全部文件添加了注释;
2.添加了账号信息更新、登出、注销的功能;
3.修改了部分类的成员访问权限;
4.修正了数据库宏定义的一处拼写错误;
5.删除了无用头文件声明及using;
6.现在能检测用户是否已经登录;
7.修复了Windows平台下WSA库的创建、销毁可能出现的漏洞;
8.删除了程序开头的Windows指令。

待修复bug列表

暂无

待添加的功能(最好能添加)

1.服务端可用的指令功能;
2.文件传输功能。

写在最后

欢迎找茬,不喜勿喷
字数统计:59276字符

About

一个简单用来练手的多线程包含日志功能的socket项目

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors