Enable Or Disable Extension Loading
启用或禁用扩展加载
int sqlite3_enable_load_extension(sqlite3 *db, int onoff
为了避免在旧的应用程序中打开安全漏洞,这些应用程序尚未准备好处理扩展加载,并且作为在评估用户输入的SQL时禁用扩展加载的手段,提供以下API来打开和关闭sqlite3_load_extension()机制。
扩展加载默认关闭。使用onoff == 1调用sqlite3_enable_load_extension()例程以打开扩展加载,并使用onoff == 0调用它以再次将其关闭。
该接口启用或禁用C-API sqlite3_load_extension()和SQL函数load_extension()。使用sqlite3_db_config(db,SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION,..)仅启用或禁用C-API。
安全警告:
建议使用SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION方法而不是此接口禁用扩展加载,因此load_extension()SQL函数保持禁用状态。这将防止SQL注入给攻击者访问扩展加载功能。