Commit graph

447 commits

Author SHA1 Message Date
Fabio Bas
471f6371b5 More work
* Refactored code out of common/ into servatrice/
 * added smtp client library
 * disable registration when connected
 * validate email address
 * send activation token via email
2015-05-24 23:02:51 +02:00
Fabio Bas
8cf4461616 fix qt4 compilation 2015-05-24 01:00:55 +02:00
Fabio Bas
ff1aed717e Added token generation, user activation command and response. 2015-05-24 00:37:45 +02:00
Fabio Bas
d7b6f76191 missing file from previous commit 2015-05-23 20:13:21 +02:00
Fabio Bas
5ace0dd892 Almost completed registration
* added missing bits of serverside code;
 * added fronted in client;
 * removed demo python scripts;
2015-05-23 20:13:03 +02:00
Gavin Bises
735fcbf311 Add first draft of protocol extension for registration
Stub for registration command handling in server

First draft of handling registration requests

WIP (will be rebased)

clean up bad imports (rebase this later)

Finish checkUserIsBanned method

Add username validity check

Check servatrice registration settings

WIP

Finish(?) server side of registration

Needs testing

Fix switch case compile failure

I have no idea why I have to do this

WIP for registration testing python script

Stub register script initial attempt

Rearrange register script

First try at sending reg

register.py sends commands correctly now

Add more debug to register.py

Pack bytes the right way - servatrice can parse py script sends now

register.py should be working now

Parse xml hack correctly

Log registration enabled settings on server start

Insert gender correctly on register

Show tcpserver error message on failed gameserver listen

Fail startup if db configured and can't be opened.

TIL qt5 comes without mysql by default in homebrew...
2015-05-22 18:55:51 +02:00
Fabio Bas
590894d283 Fix macro for MSVC; fix #1063 2015-05-11 09:00:25 +02:00
Fabio Bas
c605948975 Catch std exceptions thrown by protobuf and try to pretty print them 2015-05-02 21:17:55 +02:00
tooomm
a6970d9624 svg+png updates
-updated and cleaned up cockatrice+servatrice svg's
-added old original svg's for future adjustments
-updated cockatrice+servatrice png's

ico+icns updates

-see #925 for more details
-updated svg's as source for new icon files

bmp updates

-updated svg's as source for new installer logos

cleaned up oracle.svg

cleaned up oracle.svg /2

svg updates /2

removed sensible data

`inkscape:export-filename` removed

removed sensible data

inkscape:export-filename

removed sensible data

inkscape:export-filename

removed sensible data

inkscape:export-filename

fix

fix2
2015-04-28 16:06:36 +02:00
Matt Lowe
66f854fe1d Changed to check every 10 mins 2015-04-23 00:26:21 +02:00
Matt Lowe
e646122f55 Updated server shutdown timer logic
Will follow the following rules

+ send a message initially
+ send a message every 20 mins
+ send a message every min when time <= 5

Updated client popup

Updated client to close any previous popups and bring up a new one.

NEEDS TO BE TESTED

added missing include

Added delete on close
2015-04-22 19:14:14 +02:00
Fabio Bas
55c174a823 Remove warning in server_logger; fix #993 2015-04-21 08:38:31 +02:00
Fabio Bas
70296dde9a Simple stack trace for singla handler (unix only) 2015-04-19 19:39:05 +02:00
Matt Lowe
1f9b1d78bc Double escaped "." 2015-04-17 17:47:58 +02:00
Matt Lowe
bba9539229 Updated regex 2015-04-17 00:17:03 +02:00
Matt Lowe
d5a1264bcb Updated server to support "."
Now uses regex.
Added "."
Updated login message
2015-04-16 23:50:05 +02:00
poixen
f79d0666e3 Merge pull request #964 from poixen/unreg_usernames
Updated server side user name check
2015-04-13 22:39:45 +02:00
Matt Lowe
0979f8fa34 Updated return value 2015-04-13 22:09:47 +02:00
poixen
72222c0b39 Merge pull request #963 from poixen/unreg_usernames
Added "-" to allowed names
2015-04-13 21:14:43 +02:00
Matt Lowe
53352c5f71 Added "-" to allowed names 2015-04-13 20:51:34 +02:00
Zach
5117c0e6c9 Merge pull request #956 from poixen/unreg_usernames
Restricted unreg usernames
2015-04-12 19:02:31 -04:00
poixen
a2f416bb51 Merge pull request #959 from poixen/server_command_limit
Server was using message limit for commands
2015-04-13 00:32:25 +02:00
Matt Lowe
b9cda5e36e Updated ini 2015-04-12 23:01:29 +02:00
Matt Lowe
f46d68b5c6 Server was using message limit for commands
Server was using getMaxMessageCountPerInterval over
getMaxCommandCountPerInterval.

Raised command limit from 10 to 20
2015-04-12 22:55:38 +02:00
Matt Lowe
70ef95931e Restricted unreg usernames
Can now only be made up of [a-z][A-Z][0-9][-_]
2015-04-12 21:29:40 +02:00
Matt Lowe
8e61fb0bae Updated message limit from 10 -> 15
I have updated the `maxMessageCountPerInterval` from 10 to 15. This will
allow some faster play from exp users.

NOTE:
If you have an existing server and update to this version, you will need
to manually change the value in the ini file, or have no ini file to
begin with. Otherwise the old ini will load in 10.
2015-04-12 19:01:16 +02:00
Fabio Bas
7bbb5dec52 fix #947 2015-04-11 15:19:16 +02:00
pepi
05424a4c0e Removed NULL conversion warnings caused by #926 2015-04-08 10:36:33 +00:00
pepi
e136c11b65 Removed compile time ssize_t warnings 2015-04-08 09:39:32 +00:00
Fabio Bas
a4cf7a71e3 fix server deck storage; fix #744 2015-03-27 15:47:38 +01:00
ctrlaltca
88b242b34d Merge pull request #829 from ctrlaltca/antiflood
Anti flood for game commands; fix #753
2015-03-22 22:08:25 +01:00
Zach
b1231e6442 Merge pull request #801 from Cockatrice/woogerboy21-setup_firstadmin
Script to add the first admin account
2015-03-16 22:30:58 -04:00
Fabio Bas
0e437cf13b Anti flood for game commands 2015-03-14 19:44:32 +01:00
woogerboy21
ebaeae0048 Script to add the first admin account
Script to add the first admin account to the servatrice database.  Running this script after setting up a servatrice server will add the user account "servatrice" with the password of "password".
2015-03-06 11:08:32 -05:00
woogerboy21
38b6235242 Cleanup script to delete unactivated user accounts
Fix #782
The script will remove any registered user accounts that are not active that are 5 days old or older (by default). You can change the time frame to whatever liking you desire.
2015-02-26 10:37:08 -05:00
Gavin Bisesi
62e0bc9bb1 Merge pull request #707 from ctrlaltca/servatrice_locking
Improvement to servatrice database interface
2015-02-18 13:16:48 -05:00
Fabio Bas
ca9fffcf7e Fix "QMYSQLResult::data: column 7 out of range" error 2015-02-12 22:39:06 +01:00
Fabio Bas
3f38e780f4 Fix #674 2015-02-04 12:48:08 +01:00
Fabio Bas
1ffb5bf76d removed hardcoded table name prefix from query 2015-01-29 13:54:15 +01:00
Fabio Bas
0f58e8bcde Servatrice: reuse prepared statements 2015-01-29 13:47:55 +01:00
Fabio Bas
3c65fba539 Avoid double locking of sessions, users table
QSqlQuery already executes not-empty queries, no need to call exec()
2015-01-29 09:54:48 +01:00
Gavin Bisesi
69e6aa355f Merge pull request #534 from poixen/accountage
Added account age to user info window
2015-01-11 21:37:07 -05:00
Matt Lowe
02043ad4f9 Added Account Age
+ Added the ability to see the account age of registered users. Changes
are both in server and client. The server will now send back the
registration date along with the user data. The client will then use
this to calculate the account age and display it in the user details
window.
2015-01-11 00:45:12 +01:00
Fabio Bas
51735613e5 force NULL as unregistered users's id 2015-01-01 16:42:20 +01:00
Fabio Bas
cd69bc8f9d Add configuration options to enable database logging 2015-01-01 15:48:53 +01:00
Fabio Bas
2896f05823 Merge remote-tracking branch 'upstream/master' into message_log
Conflicts:
	servatrice/CMakeLists.txt
2015-01-01 15:02:17 +01:00
ctrlaltca
16bbc5e8c0 Merge pull request #516 from mcallahan/compilation-warnings
Clean up a small pile of compiler warnings.
2015-01-01 14:32:53 +01:00
Michael Callahan
3a0c86938c Clean up a small pile of compiler warnings. 2014-12-30 15:54:38 -07:00
Fabio Bas
54ce135e0c Optimize qt plugins installation
* Always install “release” plugins
 * install only plugins actually used
2014-12-28 22:21:45 +01:00
Fabio Bas
02978ce404 Implement the logging method 2014-12-13 18:43:31 +01:00
Fabio Bas
ba71d3a256 Add db schema and fix sql plugins installation 2014-12-13 18:43:05 +01:00
woogerboy21
ff8e25bb7e removed qdebug line for >= maxuser (no need to fill log) 2014-11-18 18:31:06 -05:00
woogerboy21
1195e4c77b corrected default ini value 2014-11-18 17:32:10 -05:00
woogerboy21
37e08cfbb6 added logic to only write debug if max user value is reached 2014-11-18 17:27:57 -05:00
woogerboy21
197ae9213c corrected invalid variable call & added log file debug information 2014-11-18 17:20:45 -05:00
woogerboy21
26f5110fea convert file tab to 4 space indent 2014-11-18 16:59:08 -05:00
woogerboy21
3c513b4bfc moved code logic to callling function & indent fix 2014-11-18 16:55:19 -05:00
woogerboy21
44a302a2d6 added trusted sources to servatrice 2014-11-18 15:39:11 -05:00
wcollins
da98d24d8c added trusted sources to servatrice 2014-11-18 15:09:21 -05:00
woogerboy21
84a5117b4c Default logging to enable with no config file
If no configuration file is found, default the logger to logging enabled.
2014-11-11 14:15:02 -05:00
Fabio Bas
c0ee060af4 Fixed vendor name 2014-11-09 23:14:36 +01:00
Fabio Bas
a716d73a42 OSX: Add proper infos to info.plist
fixes #411
2014-11-09 21:03:10 +01:00
woogerboy21
950fc01363 Correct gametype primary key
Updated rooms_gametype to reflect proper column as primary key.
2014-10-24 21:02:45 -04:00
Fabio Bas
754b97f212 Servatrice: open in a terminal window when started from the menu 2014-10-11 13:38:07 +02:00
Fabio Bas
c0abb347ac Servatrice: Install icons and desktop file under linux 2014-10-11 13:37:52 +02:00
Gavin Bisesi
0f5f82d492 Merge pull request #358 from poixen/serverlogo2
Servatrice logo
2014-10-09 11:27:15 -04:00
Matt Lowe
359714214d Added .desktop file 2014-10-08 18:46:31 +02:00
Gavin Bisesi
3c0a09bf5c Merge pull request #361 from woogerboy21/servatrice-dbtable-fix
correct _room db table, add _rooms_gametypes table
2014-10-08 08:50:00 -04:00
woogerboy21
9cd1a5b33f correct _room db table, add _rooms_gametypes table
Corrected table column in _rooms db table and added _rooms_gametypes
table.
2014-10-07 14:49:24 -04:00
Fabio Bas
22af789c9e Servatrice: log to console authentication method on startup 2014-10-07 17:04:22 +02:00
Matt Lowe
90c2101a43 Removed png file 2014-10-07 16:50:19 +02:00
Matt Lowe
4866e94c86 Renamed resources
+ renamed the resources to servatrice.*
2014-10-07 16:49:40 +02:00
Fabio Bas
15555c16fd Fix servatrice's regonly mode 2014-10-06 22:56:09 +02:00
Fabio Bas
0d35488c21 Added schema for _rooms table 2014-10-06 21:49:38 +02:00
Fabio Bas
01bd26d228 Misc typos fixing 2014-10-06 21:44:20 +02:00
Matt Lowe
5b50aa0f0a Servatrice logo
+ added resources needed for servatrice logo
~ updated CMakeLists.txt to include the new resources
2014-10-06 21:04:37 +02:00
Fabio Bas
91dafdb3e8 Move server network settings to the bottom and add a disclaimer 2014-10-04 18:21:07 +02:00
Fabio Bas
29cf353913 Give servatrice example configuration some love
added "password" settings
commented all settings
2014-10-04 17:51:27 +02:00
Fabio Bas
0d9eec4b64 Servatrice: added authentication type "password" 2014-10-04 17:50:01 +02:00
Fabio Bas
0261862b1b Fix configuration loading 2014-10-04 10:33:55 +02:00
Fabio Bas
871f5f7c94 use qWarning instead of std::err 2014-10-02 23:45:42 +02:00
Fabio Bas
8d8ccaad7f use 4 spaces instead of tabs 2014-10-02 23:42:51 +02:00
Fabio Bas
37eaeaae13 servatrice: as a third choice, check for a config in /etc/servatrice/ 2014-10-02 23:41:24 +02:00
Fabio Bas
b348068369 Servatrice: Add a default option for every config value
add an empty room swell, if none had been defined in the config (or we
are running with no config at all)
2014-10-02 23:11:49 +02:00
Fabio Bas
4b38187d20 Fix logfile option in servatrice.ini
servatrice was using hardcocded filename “server.log” even if a custom
value was specified
2014-10-02 23:00:17 +02:00
Fabio Bas
a1b6600fe1 Servatrice: group all the use of QSettings in a single file
and add a method to guess the path of servatrice.ini
2014-10-02 22:37:50 +02:00
Gavin Bisesi
263b5a40f5 Merge pull request #341 from ctrlaltca/servatrice_install_configs
Servatrice: install example ini and sql schema file
2014-10-02 10:06:03 -04:00
Fabio Bas
7afdff1b3b Servatrice: install example ini and sql schema file
WIN: in the binary directory
OSX: in the app bundle’s Resources subdirectory
LINUX: in $PREFIX/share/servatrice
2014-10-02 08:34:21 +02:00
Fabio Bas
355de8fba4 Drop libgcrypt dependency for qt5 2014-10-01 20:21:22 +02:00
Gavin Bisesi
5c46cfc169 Merge pull request #179 from woogerboy21/registered-user-only-server
Registered Only Server
2014-08-11 09:03:57 -04:00
Fabio Bas
6e3c7d33da Make protobuf cleanup its resourced when servatrice ends
Should help make valgrind’s log a bit cleaner
2014-08-08 13:43:50 +02:00
Fabio Bas
0a5106b8ef Don't leak a QSettings object at every logged message 2014-08-08 09:57:07 +02:00
Fabio Bas
13bd35e020 Servatrice: add prototypes for local functions 2014-07-24 18:16:08 +02:00
Fabio Bas
036980eb44 ISO C++ forbids variable length array 2014-07-24 17:37:54 +02:00
woogerboy21
021f0911c4 Merge remote-tracking branch 'upstream/master' into registered-user-only-server
Conflicts:
	common/server.cpp
	common/server_protocolhandler.cpp
	servatrice/src/servatrice.cpp
2014-07-18 23:46:56 -04:00
Fabio Bas
d894c53265 Servatrice: fix handling of incoming connections on qt5 2014-07-08 22:05:06 +02:00
Fabio Bas
e9895d643f Merge remote-tracking branch 'upstream/master' into cmake_qt5 2014-07-03 16:40:04 +02:00
woogerboy21
0a1fe7f5a8 Requested Cleanup
Corrected tab to 4 space (per request)
Moved regonly option under authentication ini location (per request)
2014-07-02 22:27:05 -04:00
woogerboy21
d246fa39fe Registered Only Server
Implemented the ability to set the server to only allow registered
users.  Also updated client to reflect the log-in rejection as well as
put a check in place for the server to not start if db connection is not
available yet registration is required.
2014-07-02 20:52:22 -04:00
woogerboy21
9ba74fee5c Example Update
Renamed mysql configuration file to include example extension and set
git to ignore mysql.cnf per request.
2014-07-02 13:23:50 -04:00