Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit f289817

Browse filesBrowse files
louwersaduh95
authored andcommitted
sqlite: enable defensive mode by default
PR-URL: #61266 Reviewed-By: René <contact.9a5d6388@renegade334.me.uk> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Edy Silva <edigleyssonsilva@gmail.com> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Jake Yuesong Li <jake.yuesong@gmail.com>
1 parent 3d5e718 commit f289817
Copy full SHA for f289817

3 files changed

+15-5Lines changed: 15 additions & 5 deletions

File tree

Expand file treeCollapse file tree
Open diff view settings
Filter options
Expand file treeCollapse file tree
Open diff view settings
Collapse file

‎doc/api/sqlite.md‎

Copy file name to clipboardExpand all lines: doc/api/sqlite.md
+4-1Lines changed: 4 additions & 1 deletion
  • Display the source diff
  • Display the rich diff
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,9 @@ exposed by this class execute synchronously.
104104
<!-- YAML
105105
added: v22.5.0
106106
changes:
107+
- version: REPLACEME
108+
pr-url: https://github.com/nodejs/node/pull/61266
109+
description: Enable `defensive` by default.
107110
- version:
108111
- v25.1.0
109112
pr-url: https://github.com/nodejs/node/pull/60217
@@ -153,7 +156,7 @@ changes:
153156
* `defensive` {boolean} If `true`, enables the defensive flag. When the defensive flag is enabled,
154157
language features that allow ordinary SQL to deliberately corrupt the database file are disabled.
155158
The defensive flag can also be set using `enableDefensive()`.
156-
**Default:** `false`.
159+
**Default:** `true`.
157160

158161
Constructs a new `DatabaseSync` instance.
159162

Collapse file

‎src/node_sqlite.h‎

Copy file name to clipboardExpand all lines: src/node_sqlite.h
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ class DatabaseOpenConfiguration {
7979
bool return_arrays_ = false;
8080
bool allow_bare_named_params_ = true;
8181
bool allow_unknown_named_params_ = false;
82-
bool defensive_ = false;
82+
bool defensive_ = true;
8383
};
8484

8585
class DatabaseSync;
Collapse file

‎test/parallel/test-sqlite-config.js‎

Copy file name to clipboardExpand all lines: test/parallel/test-sqlite-config.js
+10-3Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@ function checkDefensiveMode(db) {
2020
}
2121
}
2222

23-
test('by default, defensive mode is off', (t) => {
23+
test('by default, defensive mode is on', (t) => {
2424
const db = new DatabaseSync(':memory:');
25-
t.assert.strictEqual(checkDefensiveMode(db), false);
25+
t.assert.strictEqual(checkDefensiveMode(db), true);
2626
});
2727

2828
test('when passing { defensive: true } as config, defensive mode is on', (t) => {
@@ -32,13 +32,20 @@ test('when passing { defensive: true } as config, defensive mode is on', (t) =>
3232
t.assert.strictEqual(checkDefensiveMode(db), true);
3333
});
3434

35+
test('when passing { defensive: false } as config, defensive mode is off', (t) => {
36+
const db = new DatabaseSync(':memory:', {
37+
defensive: false
38+
});
39+
t.assert.strictEqual(checkDefensiveMode(db), false);
40+
});
41+
3542
test('defensive mode on after calling db.enableDefensive(true)', (t) => {
3643
const db = new DatabaseSync(':memory:');
3744
db.enableDefensive(true);
3845
t.assert.strictEqual(checkDefensiveMode(db), true);
3946
});
4047

41-
test('defensive mode should be off after calling db.enableDefensive(false)', (t) => {
48+
test('defensive mode off after calling db.enableDefensive(false)', (t) => {
4249
const db = new DatabaseSync(':memory:', {
4350
defensive: true
4451
});

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.