summaryrefslogtreecommitdiff
path: root/src/char_sql/char.c
AgeCommit message (Collapse)AuthorFilesLines
2008-07-13Modified storage data loadingultramage1-0/+12
* storage is now loaded/saved along with character status * as a consequence, a lot of storage handling code was removed * there is no more locking done within storage data * mapservers no longer cache the data (solves muiltimapserver exploit) * loading storage on char select may decrease charserver performance git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12950 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-06-19Basic cleanup of the SQL charserver homunculus code.ultramage1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12863 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-28Cleaned up char server set online/offline/char select functions. ↵Kevin1-5/+10
(bugreport:1359) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12670 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-26Cleaned up auth system after change back to map server request.Kevin1-49/+60
- Created function set_char_charselect to get rid of some of the "special case" variables. - Removed code that involved the char server sending auth data at char select. - Changed char select code to update the instance of the char data in the DB to fix map/sex info not being propagated to auth request. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12658 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-21* Changed the data field of timers from int to intptr.FlavioJS1-8/+8
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12633 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-21Made some cleanup in changesextoms1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12626 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-17- Some mistake from someone but OMG!zephyrus1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12609 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-16Fixed an issue in r12575 where 'not setting char offline when going from ↵ultramage1-5/+3
mapserver to charserver' also caused a permanent account lockout if the player pressed 'cancel' in the char select screen. Merged some recent changes from SQL to TXT, as someone didn't bother to do it. Ifdefed the quest data request code as SQL-only (this was causing server disconnects whenver someone logged in). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12606 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14* Fixed a possible crash in char_sql. (since r12575, later modified in r12590).FlavioJS1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12593 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14Fixed a typo in char_sql/char.ctoms1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12591 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14Fixed a bug in the disconnection part char-server (not sending you offline)toms1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12590 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14Removed some unused variables that appeared in the last commit (r12584).Kevin1-3/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12585 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14Some more updates to the quest log system. It has been completely moved to ↵Kevin1-33/+1
the inter server instead of the char server. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12584 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14* Followup to r12579 (all other players appeared as female on sql branch).FlavioJS1-0/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12583 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-13Major updates to the quest system.Kevin1-71/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12581 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-13* Quick&dirty reversal of the inter-server behaviour introduced in r3255/r3256:FlavioJS1-1/+83
- the behaviour enabled a desynch between the char-server and the map-server - now the map-server asks the char-server to authenticate the auth info (the char-server doesn't send the auth info immediatelly) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12579 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-13Login will no longer set character offline when going from map to character ↵Kevin1-1/+2
select. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12575 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-11At char select, the char server will set character to server -2 (server ↵Kevin1-0/+2
unknown) rather then -1 (at char select) and will be changed to the map server id once the character loads in. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12569 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-11The max_account_id packetver detection mechanism will never cause any ↵ultramage1-14/+0
connection problems ever again. (bugreport:388) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12563 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-11Finished most of the quest log code, still bits here and there but it's ↵Kevin1-6/+9
usable now. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12558 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-11Some quest log changes and removed one of the set char offline calls that ↵Kevin1-1/+1
was added in revision 12552. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12557 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-10Client not marked online until map receives auth request from the client and ↵Kevin1-1/+0
is approved. Also added some online/offline sets to the auth system that were being looked over and not properly updating the char server as to what's going on. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12552 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-10Modified the charservers to use a DBMap instead of a cyclic array for auth data.ultramage1-104/+118
Merged the auth fix from r12473 to TXT as well. Removed the no-op from r12547. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12551 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-10- Fixed Max Guardians max = 8 (no need to increase this value for woe 2.0 as ↵zephyrus1-1/+1
non indexed guardians are set outside of the array). - Hunter traps have 3500 HP, they are not removed by just one hit. (This also fix the bug you can't move traps with arrow shower). - Some cleanups. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12549 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-10Char server now loads/saves quest information.Kevin1-3/+108
Included table definitions for quests and quest objectives. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12545 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-04Bug fixes for Auth Glitch and Map server crash through script warp when ↵Kevin1-5/+14
changing map servers. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12473 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-03Renamed 'connect_until_time' to 'expiration_time'.ultramage1-10/+10
Renamed 'ban_until_time' to 'unban_time'. this also applies to login table columns (see upgrade_svn12464.sql). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12464 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-28Some more txt/sql login server synchronization:ultramage1-41/+0
- removed the option to specify multiple IPs/subnets for 'ladminallowip' - removed the @gm command and all associated management code - removed the 'save unknown packets' code - removed the lengthy TXT ipban code (which was essentially a copy of what's already handled by the socket layer/packet_athena.conf) - implemented 'start_limited_time' in SQL (expiration for new accounts) - applied some missing TXT changes from the last update git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12446 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-27Partial rewrite of the login server's auth system.ultramage1-9/+18
* replaced the cyclic, size-limited auth_fifo data structure with the more appropriate DBMap-based alternative (stops some erratic behavior) * added code to simulate the pseudo-status "online on login server" * auth data will now expire after 30 seconds instead of persisting * better-than-aegis handling of login cancellation (the server will wipe all previous auth data instead of making you wait for it to expire) * proper status message - no more generic "rejected from server", now you'll get "the server still recognizes your last connection" * fixed a typo in r10110 which caused disconnect timer removal to fail * split off some parsing code to login_auth_ok() and login_auth_failed() * extended the auth confirmation packet so that the login_id1/2 values are sent along with the associated account id (stops charserver from making wrong choices if two incoming sessions have the same account id) * fixed a bug in the disconnect part of the main charserver parsing loop, where a non-authed client would erase the online db entry for a client that's already online, thus bypassing any dual-login checks * added code to stop the waiting_disconnect timer when the associated online entry is removed right away, instead of doing checks later * removed code that would periodically wipe the online status of clients that are in the auth process (producing yet more erratic behavior) * commented out some TXT-only reconnect prevention code (bugreport:1281) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12441 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-27merged the charserver acc modification code cleanup to TXT (r11324)ultramage1-12/+18
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12440 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-26Adjusted eAthena code to compile cleanly in C++ mode.ultramage1-20/+20
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12436 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-25Added proper checks to adoption processing (followup to r12428).ultramage1-7/+13
Cleaned up some code / fixed some typos. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12432 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-16- Added support for offline divorce.zephyrus1-14/+30
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12379 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-16- Added De-adopt support when deleting a baby.zephyrus1-2/+21
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12377 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-16- Optimized a little bit char deletion process with partner info.zephyrus1-28/+15
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12375 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-03- Merged mail system to Stable. Need a second check... please wait.zephyrus1-0/+3
- No packet added until everything is done. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12287 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-17- Updated Eye of Hellion to use the new format of the input command.skotlex1-1/+1
- corrected login_fd/char_fd being uninitialized in the char servers. - Changed a bit around how status_base_atk works to avoid overflows. - Added a check to prevent using consume-delay items when you cannot use skills, since that opens an exploit if the item also has non-skill-casting components to its script. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12214 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-12Fixed SQL charserver not logging char deletion correctly (see bugreport:944)ultramage1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12197 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-01Fixed sql charserver crashing when mapserver is disconnected and someone ↵ultramage1-1/+1
does a double login (bugreport:870) - it was a typo in r11410 git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12159 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-10Another round of login server cleaningultramage1-5/+0
* fixed passwordencrypt on SQL not behaving correctly (since r10753) * corrected some column lengths in the login db (username, password,...) * fixed some places which used wfifo without first reallocating it * removed interserver packet 0x7532 (Request to end connection), as there was no code that actually sent this packet * moved RFIFOSKIP actions to execute as soon as possible git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12043 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-08Added missing session auth checks to charserver.ultramage1-7/+14
Packets from non-authed clients will now be discarded. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12034 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-06Modified showmsg code to not attach a timestamp to MSG_NONE-type messages, ↵ultramage1-12/+9
generated by ShowMessage(). It now works exactly like printf(). Removed/replaced all printf calls in the code. Added a new flag to setting 'console_silent', for filtering debug messages. Silenced the "Broken pipe found" and "Server running in debug mode" messages. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12020 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-28* Fixed a memory leak in memitemdata_to_sql.FlavioJS1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11989 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-18minor code tweakingultramage1-2/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11936 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-17* Added flag.server to indicate interserver socketsultramage1-8/+8
- replaces the previous way (setting 'client_addr' to 0) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11930 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-27* TXT/SQL login server code synchronizationultramage1-31/+25
- exported several core structures to login.h - split off ladmin communication code from the TXT login server - removed all occurences of login_log(); a unified function should be added when SQL's loginlog_db logging code gets synced with TXT - removed conf setting login_log_filename - fixed ladmin getting timeouts since the ping system was changed - removed login/char server_fd[] arrays, added server[].fd instead git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11826 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-27Removed some unneccessary charserver code.ultramage1-15/+13
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11825 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-27- Corrected the online_data_cleanup routine setting offline characters that ↵skotlex1-0/+2
are still connected to the char-server. - Added a check in script command sc_end to properly end infinte endure - ASC_BREAKER no longer triggers status effect cards. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11817 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-21Removed one duplicit sql operation when saving items (bugreport:459)ultramage1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11768 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-18- Implemented a small change that was long overdue: Displaying the ↵skotlex1-21/+79
char-select screen now uses a single SQL query instead of up to 9. - Fixed a bug in the update to prevent setting cell types on unwalkable cells. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11757 54d463be-8e91-2dee-dedb-b68131a5f0ec