working on sqlite

libevent.rpm
mom040267 11 years ago
parent c14f941392
commit 68f28329fc
  1. 6
      Makefile.in
  2. 6
      README.turnadmin
  3. 9
      README.turnserver
  4. 3
      README.turnutils
  5. 12
      configure
  6. 4
      examples/etc/turnserver.conf
  7. 2
      examples/scripts/longtermsecuredb/secure_relay_with_db_sqlite.sh
  8. 2
      examples/scripts/restapi/secure_relay_secret_with_db_sqlite.sh
  9. 4
      examples/scripts/shorttermsecure/secure_relay_short_term_mech.sh
  10. 6
      man/man1/turnadmin.1
  11. 9
      man/man1/turnserver.1
  12. 3
      man/man1/turnutils.1
  13. 3
      postinstall.txt
  14. BIN
      sqlite/turndb
  15. 32
      src/apps/relay/mainrelay.c
  16. 2
      src/apps/relay/userdb.h

@ -104,7 +104,7 @@ distclean: clean
install: all ${MAKE_DEPS}
${MKDIR} ${DESTDIR}${PREFIX}
${MKDIR} ${DESTDIR}${BINDIR}
${MKDIR} ${DESTDIR}${LOCALSTATEDIR}
${MKDIR} ${DESTDIR}${LOCALSTATEDIR}/db
${MKDIR} ${DESTDIR}${MANPREFIX}/man/man1
${MKDIR} ${DESTDIR}${CONFDIR}
${MKDIR} ${DESTDIR}${LIBDIR}
@ -148,12 +148,12 @@ install: all ${MAKE_DEPS}
${RMCMD} ${DESTDIR}${EXAMPLESDIR}/scripts/rfc5769.sh
${INSTALL_DIR} include/turn/client ${DESTDIR}${TURNINCLUDEDIR}
${INSTALL_DATA} include/turn/ns_turn_defs.h ${DESTDIR}${TURNINCLUDEDIR}
${SQLITECMD} ${DESTDIR}${LOCALSTATEDIR}/turndb < turndb/schema.sql
${SQLITECMD} ${DESTDIR}${LOCALSTATEDIR}/db/turndb < turndb/schema.sql
${MORECMD} ${DESTDIR}${DOCSDIR}/postinstall.txt
deinstall: ${MAKE_DEPS}
${PKILL_PROGRAM} turnserver || ${ECHO_CMD} OK
${RMCMD} ${DESTDIR}${LOCALSTATEDIR}/turndb
${RMCMD} ${DESTDIR}${LOCALSTATEDIR}/db/turndb
${RMCMD} ${DESTDIR}${DOCSDIR}
${RMCMD} ${DESTDIR}${SCHEMADIR}
${RMCMD} ${DESTDIR}${BINDIR}/turnserver

@ -80,7 +80,8 @@ Commands:
Options with required values:
-b, --db, --userdb SQLite user database file name (default - /var/turndb).
-b, --db, --userdb SQLite user database file name (default - /var/db/turndb or
/usr/local/var/db/turndb).
See the same option in the turnserver section.
-e, --psql-userdb PostgreSQL user database connection string.
See the --psql-userdb option in the turnserver section.
@ -170,7 +171,8 @@ to see the man page.
/etc/turnserver.conf
/var/turndb
/var/db/turndb
/usr/local/var/db/turndb
/usr/local/etc/turnserver.conf

@ -81,7 +81,8 @@ Config file settings:
User database settings:
-b, --db, --userdb SQLite user database file name (default - /var/turndb).
-b, --db, --userdb SQLite user database file name (default - /var/db/turndb or
/usr/local/var/db/turndb).
-e, --psql-userdb User database connection string for PostgreSQL.
This database can be used for long-term and short-term
@ -716,7 +717,8 @@ For the user database, the turnserver has the following options:
Obviously, only a few users can be set that way, and their credentials are fixed
for the turnserver process lifetime.
2) Users can be stored in SQLite DB. The default SQLite database file is /var/turndb.
2) Users can be stored in SQLite DB. The default SQLite database file is /var/db/turndb
or /usr/local/var/db/turndb.
3) Users can be stored in PostgreSQL database, if the turnserver was compiled with PostgreSQL
support. Each time turnserver checks user credentials, it reads the database (asynchronously,
@ -841,7 +843,8 @@ FILES
/etc/turnserver.conf
/var/turndb
/var/db/turndb
/usr/local/var/db/turndb
/usr/local/etc/turnserver.conf

@ -251,7 +251,8 @@ FILES
/etc/turnserver.conf
/var/turndb
/var/db/turndb
/usr/local/var/db/turndb
/usr/local/etc/turnserver.conf

12
configure vendored

@ -445,7 +445,13 @@ fi
if [ -z "${LOCALSTATEDIR}" ] ; then
if [ -z "${localstatedir}" ] ; then
LOCALSTATEDIR=/var
if [ "${PREFIX}" = "/usr" ] ; then
LOCALSTATEDIR=/var
else
LOCALSTATEDIR=${PREFIX}/var
fi
else
LOCALSTATEDIR=${localstatedir}
fi
@ -1176,7 +1182,7 @@ fi
# So, what we have now:
###############################
OSCFLAGS="${OSCFLAGS} ${TURN_NO_THREAD_BARRIERS} ${TURN_NO_DTLS} ${TURN_NO_GCM} ${TURN_NO_TLS} -DINSTALL_PREFIX=${PREFIX}"
OSCFLAGS="${OSCFLAGS} ${TURN_NO_THREAD_BARRIERS} ${TURN_NO_DTLS} ${TURN_NO_GCM} ${TURN_NO_TLS} -DINSTALL_PREFIX=${PREFIX} -DTURNDB=${LOCALSTATEDIR}/db/turndb"
if ! [ -z "${TURN_ACCEPT_RPATH}" ] ; then
if [ -z "${TURN_DISABLE_RPATH}" ] ; then
@ -1185,7 +1191,7 @@ if ! [ -z "${TURN_ACCEPT_RPATH}" ] ; then
fi
fi
${ECHO_CMD} PREFIX="${PREFIX}" OSLIBS="${OSLIBS}" DBLIBS="${DBLIBS}" OSCFLAGS="${OSCFLAGS}" DBCFLAGS="${DBCFLAGS}" $@
${ECHO_CMD} PREFIX="${PREFIX}" LOCALSTATEDIR="${LOCALSTATEDIR}" OSLIBS="${OSLIBS}" DBLIBS="${DBLIBS}" OSCFLAGS="${OSCFLAGS}" DBCFLAGS="${DBCFLAGS}" $@
###############################
# Make make:

@ -250,9 +250,9 @@
# SQLite database file name.
#
# Default file name is /var/turndb.
# Default file name is /var/db/turndb or /usr/local/var/db/turndb.
#
#userdb=/var/turndb
#userdb=/var/db/turndb
# PostgreSQL database connection string in the case that we are using PostgreSQL
# as the user database.

@ -31,5 +31,5 @@ fi
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/lib/:/usr/local/mysql/lib/
export DYLD_LIBRARY_PATH=${DYLD_LIBRARY_PATH}:/usr/local/lib/:/usr/local/mysql/lib/
PATH="./bin/:../bin/:../../bin/:${PATH}" turnserver --server-name="blackdow.carleon.gov" -v --syslog -a -L 127.0.0.1 -L ::1 -E 127.0.0.1 -E ::1 --max-bps=3000000 -f -m 3 --min-port=32355 --max-port=65535 -r north.gov --db="var/turndb" --cert=turn_server_cert.pem --pkey=turn_server_pkey.pem --log-file=stdout --cipher-list=ALL:SSLv2 --oauth $@
PATH="./bin/:../bin/:../../bin/:${PATH}" turnserver --server-name="blackdow.carleon.gov" -v --syslog -a -L 127.0.0.1 -L ::1 -E 127.0.0.1 -E ::1 --max-bps=3000000 -f -m 3 --min-port=32355 --max-port=65535 -r north.gov --db="var/db/turndb" --cert=turn_server_cert.pem --pkey=turn_server_pkey.pem --log-file=stdout --cipher-list=ALL:SSLv2 --oauth $@

@ -34,4 +34,4 @@ fi
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/lib/:/usr/local/mysql/lib/
export DYLD_LIBRARY_PATH=${DYLD_LIBRARY_PATH}:/usr/local/lib/:/usr/local/mysql/lib/
PATH="./bin/:../bin/:../../bin/:${PATH}" turnserver -v --syslog -a -L 127.0.0.1 -L ::1 -E 127.0.0.1 -E ::1 --max-bps=3000000 -f -m 3 --min-port=32355 --max-port=65535 --use-auth-secret --realm=north.gov --db="var/turndb" --cert=turn_server_cert.pem --pkey=turn_server_pkey.pem --log-file=stdout --cipher-list=ALL:SSLv2 $@
PATH="./bin/:../bin/:../../bin/:${PATH}" turnserver -v --syslog -a -L 127.0.0.1 -L ::1 -E 127.0.0.1 -E ::1 --max-bps=3000000 -f -m 3 --min-port=32355 --max-port=65535 --use-auth-secret --realm=north.gov --db="var/db/turndb" --cert=turn_server_cert.pem --pkey=turn_server_pkey.pem --log-file=stdout --cipher-list=ALL:SSLv2 $@

@ -15,7 +15,7 @@
# 2) use fingerprints (-f)
# 3) use 3 relay threads (-m 3)
# 4) use min UDP relay port 32355 and max UDP relay port 65535
# 5) --db="var/turndb" means that SQLite database "var/turndb" will be used.
# 5) --db="var/db/turndb" means that SQLite database "var/db/turndb" will be used.
# 6) "--cert=example_turn_server_cert.pem" sets the OpenSSL certificate file name.
# 7) "--pkey=example_turn_server_pkey.pem" sets the OpenSSL private key name.
# 8) "--log-file=stdout" means that all log output will go to the stdout.
@ -31,4 +31,4 @@ fi
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/lib/:/usr/local/mysql/lib/
export DYLD_LIBRARY_PATH=${DYLD_LIBRARY_PATH}:/usr/local/lib/:/usr/local/mysql/lib/
PATH="./bin/:../bin/:../../bin/:${PATH}" turnserver -v --syslog -A --max-bps=3000000 -f -m 3 --min-port=32355 --max-port=65535 --db="var/turndb" --cert=turn_server_cert.pem --pkey=turn_server_pkey.pem --log-file=stdout -E 127.0.0.1 -E ::1 --cipher-list=ALL:SSLv2 $@
PATH="./bin/:../bin/:../../bin/:${PATH}" turnserver -v --syslog -A --max-bps=3000000 -f -m 3 --min-port=32355 --max-port=65535 --db="var/db/turndb" --cert=turn_server_cert.pem --pkey=turn_server_pkey.pem --log-file=stdout -E 127.0.0.1 -E ::1 --cipher-list=ALL:SSLv2 $@

@ -132,7 +132,8 @@ Options with required values:
.TP
.B
\fB\-b\fP, \fB\-\-db\fP, \fB\-\-userdb\fP
SQLite user database file name (default \- /var/turndb).
SQLite user database file name (default \- /var/db/turndb or
/usr/local/var/db/turndb).
See the same option in the \fIturnserver\fP section.
.TP
.B
@ -261,7 +262,8 @@ to see the man page.
/etc/turnserver.conf
.PP
/var/turndb
/var/db/turndb
/usr/local/var/db/turndb
.PP
/usr/local/etc/turnserver.conf
.PP

@ -132,7 +132,8 @@ User database settings:
.TP
.B
\fB\-b\fP, \fB\-\-db\fP, \fB\-\-userdb\fP
SQLite user database file name (default \- /var/turndb).
SQLite user database file name (default \- /var/db/turndb or
/usr/local/var/db/turndb).
.TP
.B
\fB\-e\fP, \fB\-\-psql\-userdb\fP
@ -971,7 +972,8 @@ Users can be set in the command line, with multiple \fB\-u\fP or \fB\-\-user\fP
Obviously, only a few users can be set that way, and their credentials are fixed
for the \fIturnserver\fP process lifetime.
.IP 2) 4
Users can be stored in SQLite DB. The default SQLite database file is /var/turndb.
Users can be stored in SQLite DB. The default SQLite database file is /var/db/turndb
or /usr/local/var/db/turndb.
.IP 3) 4
Users can be stored in PostgreSQL database, if the \fIturnserver\fP was compiled with PostgreSQL
support. Each time \fIturnserver\fP checks user credentials, it reads the database (asynchronously,
@ -1096,7 +1098,8 @@ it would affect the performance.
/etc/turnserver.conf
.PP
/var/turndb
/var/db/turndb
/usr/local/var/db/turndb
.PP
/usr/local/etc/turnserver.conf
.PP

@ -374,7 +374,8 @@ to see the man page.
/etc/turnserver.conf
.PP
/var/turndb
/var/db/turndb
/usr/local/var/db/turndb
.PP
/usr/local/etc/turnserver.conf
.PP

@ -16,7 +16,8 @@ service, you have to:
/usr/local/share/turnserver/schema.stats.redis
as Redis status & statistics database schema description.
If you are using SQLite, the default database location is in /var/turndb.
If you are using SQLite, the default database location is in
/var/db/turndb or in /usr/local/var/db/turndb.
c) add whatever is necessary to enable start-up daemon for the
/usr/local/bin/turnserver.

Binary file not shown.

@ -36,6 +36,30 @@ static int use_lt_credentials = 0;
static int use_st_credentials = 0;
static int anon_credentials = 0;
////// TURNDB //////////////
#if defined(TURNDB)
#if defined(Q)
#undef Q
#endif
#define Q(x) #x
#if defined(QUOTE)
#undef QUOTE
#endif
#define QUOTE(x) Q(x)
#define DEFAULT_USERDB_FILE QUOTE(TURNDB)
#else
#define DEFAULT_USERDB_FILE "/usr/local/var/db/turndb"
#endif
//////TURN PARAMS STRUCTURE DEFINITION //////
#define DEFAULT_GENERAL_RELAY_SERVERS_NUMBER (1)
@ -413,7 +437,8 @@ static char Usage[] = "Usage: turnserver [options]\n"
" for the sessions, combined (input and output network streams are treated separately).\n"
" -c <filename> Configuration file name (default - turnserver.conf).\n"
#if !defined(TURN_NO_SQLITE)
" -b, , --db, --userdb <filename> SQLite database file name (default - /var/turndb).\n"
" -b, , --db, --userdb <filename> SQLite database file name; default - /var/db/turndb or\n"
" /usr/local/var/db/turndb.\n"
#endif
#if !defined(TURN_NO_PQ)
" -e, --psql-userdb, --sql-userdb <conn-string> PostgreSQL database connection string, if used (default - empty, no PostreSQL DB used).\n"
@ -587,7 +612,8 @@ static char AdminUsage[] = "Usage: turnadmin [command] [options]\n"
" -G, --list-realm-options List realm params.\n"
"\nOptions with mandatory values:\n\n"
#if !defined(TURN_NO_SQLITE)
" -b, --db, --userdb SQLite database file, default value is /var/turndb.\n"
" -b, --db, --userdb SQLite database file, default value is /var/db/turndb or\n"
" /usr/local/var/db/turndb.\n"
#endif
#if !defined(TURN_NO_PQ)
" -e, --psql-userdb, --sql-userdb PostgreSQL user database connection string, if PostgreSQL DB is used.\n"
@ -1602,7 +1628,7 @@ static void print_features(unsigned long mfn)
#endif
#if !defined(TURN_NO_SQLITE)
TURN_LOG_FUNC(TURN_LOG_LEVEL_INFO, "SQLite supported\n");
TURN_LOG_FUNC(TURN_LOG_LEVEL_INFO, "SQLite supported, default database location is %s\n",DEFAULT_USERDB_FILE);
#else
TURN_LOG_FUNC(TURN_LOG_LEVEL_INFO, "SQLite is not supported\n");
#endif

@ -48,8 +48,6 @@ extern "C" {
//////////// Defines //////////////////////////////
#define DEFAULT_USERDB_FILE ("/var/turndb")
#define AUTH_SECRET_SIZE (512)
//////////// REALM //////////////

Loading…
Cancel
Save