Commit Graph

828 Commits

Author SHA1 Message Date
Teravus Ovares
f0bf3df024 * Fix half of the issue behind the long standing 'UseCircuitCode' packet spam from libOMV clients. AckPacket.Header.Sequence was 0. This caused LibOMV to ignore it.
* There's another patch over at http://jira.openmv.org/browse/LIBOMV-415 to fix the 'resend forever' issue.
2008-11-07 01:05:22 +00:00
Jeff Ames
486ac1e12f Update svn properties, minor formatting cleanup. 2008-11-06 22:24:34 +00:00
Justin Clarke Casey
c6dad833f5 * minor: remove some mono compiler warnings 2008-11-06 21:01:16 +00:00
Justin Clarke Casey
d31d02c373 * refactor: Split BeginRecieve() into BeginReceive() and BeginRobustReceive() 2008-11-06 20:10:39 +00:00
Justin Clarke Casey
5a852321e0 * Stop passing along epSender explicitly where we are really using the constantly reused ep sender field 2008-11-06 19:59:59 +00:00
Justin Clarke Casey
427a80bba5 * test: Add assert checking that the circuit which trigger the socket exception has been closed 2008-11-06 19:52:06 +00:00
Justin Clarke Casey
29691a3d36 * Test to ensure that the udp server stays active after receiving a SocketException on BeginReceive 2008-11-06 19:35:57 +00:00
Justin Clarke Casey
8477aab8e0 * refactor: factor out test packet send method in client stack unit tests 2008-11-06 18:27:56 +00:00
Justin Clarke Casey
f7f448bc78 * Fix capitalization typoes in packet throttle that happened to be the name of existing fields
* This should (hopefully) allow TestClient and stuff built on top of it to work again
* Will probably come back later and change variable names to stop this happening again
2008-11-05 22:17:47 +00:00
Justin Clarke Casey
892e7bf9fb * Properly use the default value if the LindenUDP.ClientStack section exists by the client throttle setting does not
* Old behaviour was to throw an exception on startup
* Print out client stack setting temporarly for debug purposes
2008-11-05 20:42:37 +00:00
Justin Clarke Casey
fc36d7fdf2 * Set default client throttle multiplier to 2 (old value was effectively 8). See OpenSim.ini.example for details as to what this means
* Really this should be 1, but I think that this would be too slow compared to a Second Life server until we improve our ability to send textures of variable quality
* This may improve one aspect of sim performance where there are many avatars.  However, there are still other performance problems that are unrelated to this change
* Value may be further tuned
* Removed temporary decals since the multipler setting will stick around now
2008-11-05 19:23:59 +00:00
MW
204ef95843 Moved a couple of more configuration fields to ConfigSettings 2008-11-05 18:00:45 +00:00
Justin Clarke Casey
4ff0c39153 * Expose a client_throttle_multiplier setting in OpenSim.ini. This multiplier is applied to all the client throttle settings received by the client
* This should probably be 1, but currently by default it is 8, to reflect what was being eon3 in OpenSim before this revision.  So if the client requested a maximum throttle 
of 1500 kilobits per second, we would actually send out 1500 kilobytes per second
* Adjusting this multiplier down towards 1 may improve your OpenSim experience, though in other situations it may degrade (e.g. if you're using a standalone over high bandwidth 
links)
* This is currently a user setting because adjusting it down may currently reveal other OpenSim bugs.
2008-11-03 21:09:30 +00:00
Justin Clarke Casey
8dbd0118a8 * Pull client throttle multipler setting out of config source. Not an adjustable setting yet (and then only for debug purposes) 2008-11-03 19:02:44 +00:00
Justin Clarke Casey
6ea24799dd * minor: don't need to null check config source in clientstack settings since this is always non null 2008-11-03 18:49:25 +00:00
Justin Clarke Casey
8c71954e08 * Use nini to pass config information to the client stack, rather than the ClientStackUserSettings class
* This conforms better to other module usage
2008-11-03 18:33:35 +00:00
Adam Frisby
4c24b1bc9b * Massive cleanup of LLClientView, removed a few hundred unnecessary value initialisers, etc. 2008-11-01 22:34:04 +00:00
Homer Horwitz
38e8853e57 Megapatch that fixes/adds: friend offer/deny/accept, friendship termination,
on-/offline updates, calling cards for friends.
This adds methods in the DB layer and changes the MessagingServer, so a full
update (incl. UGAIM) is necessary to get it working. Older regions shouldn't
break, nor should older UGAIM break newer regions, but friends/presence will
only work with all concerned parts (UGAIM, source region and destination
region) at this revision (or later).
I added the DB code for MSSQL, too, but couldn't test that.
BEWARE: May contain bugs.
2008-11-01 22:09:48 +00:00
Justin Clarke Casey
b03e34dd2d * Fix http://opensimulator.org/mantis/view.php?id=2517
* Don't save attachments on saving oar, which stops them coming back as ghost prims
2008-11-01 21:28:52 +00:00
Justin Clarke Casey
465a931c05 * In the client stack, if the BeginReceive() throws an exception then do print this out to the log once
* This may help us detect if mysterious UDP disconnects are happening because of this.
* Shouldn't be any functional change but I would appreciate a buddy check from Teravus if he has time (as for all client stack changes)
2008-10-31 19:41:07 +00:00
Justin Clarke Casey
5feaff8524 test: Extend malformed packet test to actually check that a valid packet can get through after the malformed ones have been sent 2008-10-30 22:32:23 +00:00
Justin Clarke Casey
419775c72b * test: Test that the client stack doesn't completely blow up if a client passes it malformed data 2008-10-30 20:17:30 +00:00
Justin Clarke Casey
2fb8089d8c * Slightly tweak to teardown test, try a circuit which never existed in the first place 2008-10-30 19:46:52 +00:00
Justin Clarke Casey
22ec3e7952 * minor: spacing adjustment before next commit 2008-10-30 19:43:58 +00:00
Justin Clarke Casey
bc1b69b2fd * test: fill out circuit teardown test 2008-10-30 19:42:25 +00:00
Justin Clarke Casey
80e87747f3 * test: Refactor test infrastructure for future client teardown test 2008-10-30 19:26:38 +00:00
Justin Clarke Casey
8a3157aa6a * Check in (disabled) results of not persisting avatar textures but rather sending ImageNotFound to clients if avatar textures are missing
* Whilst this does automatically get the client to rebake, on crossing a region border the 'local' assets are left behind
* There may be a cunning solution (such as squirting the assets on region crossing, or having them fetched from the original region) but 
instead I'm going to opt for the easy solution of keeping them in the asset database, for now
2008-10-29 18:38:10 +00:00
Melanie Thielker
f9eb3712ed Remove a debug output 2008-10-29 00:32:41 +00:00
Melanie Thielker
766269a59b Plumbing along.... 2008-10-29 00:15:39 +00:00
Justin Clarke Casey
1ff9709ea3 * Possibly fix grey avatar appearance problems
* And hopefully rebaking all the time should no longer be necessary now
* It turns out that when the client baked the texture, the uploaded asset had the Temporary flag to true (Temporary is actually deprecated).  
* It also had the StoreLocal flag set to true, which signifies that the asset should be stored locally.  If it disappears we should reply to the asset request with 
ImageNotInDatabasePacket
* However, last time this was enabled some clients started crashing.  This may well no longer be the case and needs to be tested, but in the mean time we will store 
the asset instead.
* This needs to be resolved in a better way, possibly by starting to send the ImageNotInDatabase packet again instead
2008-10-28 21:31:23 +00:00
Justin Clarke Casey
247b806134 * minor: Add documentation to some of the appearance methods, change some logging messages 2008-10-28 17:35:36 +00:00
Jeff Ames
b2d6b0a3d4 Update svn properties, minor formatting cleanup. 2008-10-27 01:43:59 +00:00
Melanie Thielker
f7e44250bf Committing a small fix for EventData along with more plumbing work 2008-10-26 19:32:41 +00:00
Melanie Thielker
c49e1b8fb6 A few more bots to yesterday's plumbing: change instant message method
signature
2008-10-25 13:53:17 +00:00
Melanie Thielker
26643c4a9d More plumbing and some wires 2008-10-25 01:42:43 +00:00
Melanie Thielker
f85be9b39a Fix a leak in the plumbing 2008-10-24 23:55:28 +00:00
Melanie Thielker
64f9f03e9a Plumb some more 2008-10-24 23:04:55 +00:00
Justin Clarke Casey
c519b80680 * minor: eliminate some mono compiler warnings 2008-10-24 21:40:05 +00:00
Justin Clarke Casey
7b224677c1 * Stop passing in unnecessary pameters to CreateNewCircuit 2008-10-24 21:34:18 +00:00
Justin Clarke Casey
3340a579e7 * Stop creating a circuit if the client fails authentication (i.e. the region server wasn't told that it was coming)
* This moves authentication from the client thread (where failure was difficult to detect) to the particular thread handling that packet
* I've kept the authentication outside of the crucial clientCircuits lock (though any delay here is probably swamped by the other delays associated with login)
* Also added more to the unit test to ensure this doesn't regress
2008-10-24 21:22:54 +00:00
Justin Clarke Casey
91c2e53277 * Change AddClient test such that we now successfully authenticate
* The fact that the assert passed even when authentication failed reveals a bug in the code that will be corrected soonish
2008-10-24 19:40:45 +00:00
Justin Clarke Casey
9fa7264c73 * minor: refactor out AddUser test setup to common method 2008-10-24 19:10:25 +00:00
Melanie Thielker
a9b1119e49 Remove a debug output dump 2008-10-24 15:04:35 +00:00
Melanie Thielker
6775b7d02d Lotsa plumming :) 2008-10-24 14:53:13 +00:00
Justin Clarke Casey
369aa8f46b * minor: Remove unused public PacketServer variable.
* If this was important to you please reinsert and we can put it in a recognized interface.
2008-10-23 20:10:19 +00:00
Justin Clarke Casey
c379c66c7c * Reenable assert for the add circuit test
* This checks that a client circuit is established when the udp server is given a use client circuit code packet
* And checks that other circuit codes do not exist
2008-10-23 19:51:10 +00:00
Justin Clarke Casey
6101202403 * Revert to executing existing setup if an added circuit did not already exist
* Not sure why things still worked in the presence of this bug - possibly the problem is compensated for later on.  If you are having udp session problems this bug fix may help 
(though no guarantees).
2008-10-23 19:25:40 +00:00
Justin Clarke Casey
d30a596989 * Add missing file from last commit. Yay for continuous integration! 2008-10-23 19:16:33 +00:00
Justin Clarke Casey
f4ad99f89d * Introduce a basic udp circuit test for adding a client
* Temporarily disabled assert because it just picked up an existing bug.  Yay for tests!
2008-10-23 19:08:54 +00:00
Justin Clarke Casey
ee3c428040 * Refactor LLUDPServer slightly so that unit tests can pass in data synchronously. Shouldn't be any functional change 2008-10-23 17:16:13 +00:00