Enhance the documentation to clarify that SQLite is not reentrant through

the authorization callback function.  Ticket #2242. (CVS 3650)

FossilOrigin-Name: b18a758a8fbd4b286ae3475af26f290d8cd583f0
This commit is contained in:
drh
2007-02-20 15:21:05 +00:00
parent 224b8948c8
commit 39fa3e3c48
3 changed files with 16 additions and 10 deletions
+7 -7
View File
@@ -1,5 +1,5 @@
C merge\sthe\ssecond\sportion\sof\sthe\scross-compile\scleanup\s(CVS\s3649)
D 2007-02-17T14:59:18
C Enhance\sthe\sdocumentation\sto\sclarify\sthat\sSQLite\sis\snot\sreentrant\sthrough\nthe\sauthorization\scallback\sfunction.\s\sTicket\s#2242.\s(CVS\s3650)
D 2007-02-20T15:21:05
F Makefile.in 1fe3d0b46e40fd684e1e61f8e8056cefed16de9f
F Makefile.linux-gcc 2d8574d1ba75f129aba2019f0b959db380a90935
F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
@@ -388,7 +388,7 @@ F www/audit.tcl 90e09d580f79c7efec0c7d6f447b7ec5c2dce5c0
F www/autoinc.tcl b357f5ba954b046ee35392ce0f884a2fcfcdea06
F www/c_interface.tcl b51b08591554c16a0c3ef718364a508ac25abc7e
F www/capi3.tcl 7a7cc225fe02eb7ab861a6019b08baa0014409e1
F www/capi3ref.tcl 9adb2d2313c3c5e9c6d6240c1d8f3d11dd533c59
F www/capi3ref.tcl 4e0df9c41ebc669a7d7e9b81b410d1f907d20e78
F www/changes.tcl dba0e1f40192f79c7a887fa3efa56e6fdd54f85a
F www/common.tcl 14d121c28532ad20c3e349caa4db708b0b822083
F www/compile.tcl 276546d7eb445add5a867193bbd80f6919a6b084
@@ -432,7 +432,7 @@ F www/tclsqlite.tcl bb0d1357328a42b1993d78573e587c6dcbc964b9
F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513
P 20ac0f364059feba5ad95dbe82db30a9aa86be78
R 33a5f120e889adb0be5eff452bbd7b62
U vapier
Z e798eb714e8ab7efa77096072c058760
P 309f2de62f34160fa24a5e1a3de0d653aabfb52b
R ec1e53d4484168716399300b8217329e
U drh
Z bf338e8653240f5646718738c1dd0f1f
+1 -1
View File
@@ -1 +1 @@
309f2de62f34160fa24a5e1a3de0d653aabfb52b
b18a758a8fbd4b286ae3475af26f290d8cd583f0
+8 -2
View File
@@ -1,4 +1,4 @@
set rcsid {$Id: capi3ref.tcl,v 1.51 2007/01/10 12:57:29 drh Exp $}
set rcsid {$Id: capi3ref.tcl,v 1.52 2007/02/20 15:21:05 drh Exp $}
source common.tcl
header {C/C++ Interface For SQLite Version 3}
puts {
@@ -1350,7 +1350,7 @@ int sqlite3_set_authorizer(
the access attempt or NULL if this access attempt is directly from
input SQL code.
The return value of the authorization function should be one of the
The return value of the authorization callback function should be one of the
constants SQLITE_OK, SQLITE_DENY, or SQLITE_IGNORE. A return of
SQLITE_OK means that the operation is permitted and that
sqlite3_prepare_v2() can proceed as normal.
@@ -1365,6 +1365,12 @@ int sqlite3_set_authorizer(
user-entered SQL. An appropriate callback can deny the user-entered
SQL access certain operations (ex: anything that changes the database)
or to deny access to certain tables or columns within the database.
SQLite is not reentrant through the authorization callback function.
The authorization callback function should not attempt to invoke
any other SQLite APIs for the same database connection. If the
authorization callback function invokes some other SQLite API, an
SQLITE_MISUSE error or a segmentation fault may result.
}
api {} {