/
init_db.3
93 lines (93 loc) · 2.97 KB
/
init_db.3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
.\" $NetBSD$
.\"
.\" Copyright (c) 2011 Abhinav Upadhyay <er.abhinav.upadhyay@gmail.com>
.\" All rights reserved.
.\"
.\" This code was developed as part of Google's Summer of Code 2011 program.
.\" Thanks to Google for sponsoring.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\"
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in
.\" the documentation and/or other materials provided with the
.\" distribution.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
.\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
.\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING,
.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.Dd August 17, 2011
.Dt INIT_DB 3
.Os
.Sh NAME
.Nm init_db
.Sh SYNOPSIS
.In apropos-utils.h
.Ft sqlite3 *
.Fn init_db "int db_flag"
.Sh DESCRIPTION
The
.Fn init_db
function will try to initialize a connection to
.Pa apropos.db
which is an
Sqlite database and return a pointer to sqlite to use that connection.
The connection should subsequentially be closed by calling
.Fn close_db
which will also release any resources being used by it.
.Pp
The argument
.Fa db_flag
should be supplied one of the following macros as its value:
.Bl -hang -width
.It Dv DB_READONLY
This will open the database in read only mode.
Use this when you simply want to query the database.
.It Dv DB_WRITE
This will open the database in read and write mode.
.It Dv DB_CREATE
This will open the database in read/write mode, and this will also create
the database schema if it does not exist already.
.El
.Sh RETURN VALUES
On successful execution the
.Fn init_db
function will return a pointer to sqlite3 which represents a connection to
the database.
.Pp
In case the file
.Pa /var/db/man.db
does not exist and
.Dv DB_CREATE
is not used as a value of
.Fa db_flag
then
.Dv NULL
will be returned.
.Sh FILES
.Bl -hang -width /var/db/man.db -compact
.It Pa /var/db/man.db
The Sqlite FTS database which maintains an index of the manual pages.
.El
.Sh SEE ALSO
.Xr apropos-utils 3 ,
.Xr close_db 3 ,
.Xr run_query 3 ,
.Xr run_query_html 3 ,
.Xr run_query_pager 3
.Sh AUTHORS
.An Abhinav Upadhyay