mirror of
https://github.com/shadow1ng/fscan.git
synced 2025-09-14 14:06:44 +08:00

- 新建Common/Core/子包,整合分散的核心功能 - Core/Constants.go: 整合端口常量和系统常量 - Core/Plugin.go: 整合插件系统,提供统一插件管理 - Core/Manager.go: 整合配置管理、参数解析和全局变量 - 更新原有文件保持向后兼容,引用Core包新结构 - 优化模块边界,减少文件数量,提升代码组织性 - 验证功能完整性,确保重构后项目正常运行 重构效果: - 文件数量: 7个核心文件 → 3个Core文件 + 兼容层 - 模块化程度: 高度模块化的插件和配置管理 - 向后兼容: 100%兼容现有API调用
50 lines
1.8 KiB
Go
50 lines
1.8 KiB
Go
package Common
|
||
|
||
import "github.com/shadow1ng/fscan/Common/Core"
|
||
|
||
/*
|
||
Types.go - 类型定义(向后兼容层)
|
||
|
||
此文件保持向后兼容,实际类型定义和插件系统已迁移到Core/Plugin.go
|
||
*/
|
||
|
||
// =============================================================================
|
||
// 向后兼容的类型别名
|
||
// =============================================================================
|
||
|
||
// HostInfo 主机信息结构 - 引用Core包中的定义
|
||
type HostInfo = Core.HostInfo
|
||
|
||
// ScanPlugin 扫描插件结构 - 引用Core包中的定义
|
||
type ScanPlugin = Core.ScanPlugin
|
||
|
||
// =============================================================================
|
||
// 向后兼容的插件类型常量
|
||
// =============================================================================
|
||
|
||
const (
|
||
PluginTypeService = Core.PluginTypeService // 服务类型插件
|
||
PluginTypeWeb = Core.PluginTypeWeb // Web类型插件
|
||
PluginTypeLocal = Core.PluginTypeLocal // 本地类型插件
|
||
PluginTypeBrute = Core.PluginTypeBrute // 暴力破解插件
|
||
PluginTypePoc = Core.PluginTypePoc // POC验证插件
|
||
PluginTypeScan = Core.PluginTypeScan // 扫描探测插件
|
||
)
|
||
|
||
// =============================================================================
|
||
// 向后兼容的插件管理函数
|
||
// =============================================================================
|
||
|
||
// RegisterPlugin 注册插件到全局管理器 - 保持向后兼容
|
||
func RegisterPlugin(name string, plugin ScanPlugin) {
|
||
Core.RegisterPlugin(name, plugin)
|
||
}
|
||
|
||
// GetGlobalPluginManager 获取全局插件管理器
|
||
func GetGlobalPluginManager() *Core.PluginManager {
|
||
return Core.GetGlobalPluginManager()
|
||
}
|
||
|
||
// 向后兼容的全局变量 - 引用Core包中的定义
|
||
var PluginManager = Core.LegacyPluginManager
|