Hello,

Attached is a patch which defines and export sqlite3_enable_load_extension

Cheers,
David
>From 866e578beaf1eb89b1bb80b9c6347f62e8ee5c60 Mon Sep 17 00:00:00 2001
From: David Pirotte <da...@altosw.be>
Date: Fri, 20 Jan 2012 14:38:13 -0200
Subject: [PATCH] sqlite3_enable_load_extension, added

Extension loading while evaluating user-entered SQL is disabled per default.
This API can be used to turn the sqlite3_load_extension() mechanism on and off.
---
 sqlite3.scm |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/sqlite3.scm b/sqlite3.scm
index 2ac2f4b..f3c16ae 100644
--- a/sqlite3.scm
+++ b/sqlite3.scm
@@ -31,6 +31,7 @@
   #:export (sqlite-open
             sqlite-close
 
+	    sqlite-enable-load-extension
             sqlite-prepare
             sqlite-bind
             sqlite-column-names
@@ -180,6 +181,14 @@
               db)
             (sqlite-error #f 'sqlite-open ret (static-errcode->errmsg ret)))))))
 
+(define sqlite-enable-load-extension
+  (let ((ele (pointer->procedure
+	      int
+	      (dynamic-func "sqlite3_enable_load_extension" libsqlite3)
+	      (list '* int))))
+    (lambda (db onoff)
+      (ele (db-pointer db) onoff))))
+
 ;;;
 ;;; SQL statements
 ;;;
-- 
1.7.8.3

Reply via email to