Commit Graph

78 Commits

Author SHA1 Message Date
Teravus Ovares
e595f82489 * Hooked up the GridComm event ChildDataUpdate to the scene.
* Added List<RegionInfo> m_neighbours to Scene 
* Hooked up the OnRegionUp event to m_neighbours list 
* Modified RegionInfo to have a bool commFailTF value so that we can skip neighbors that fail.  (when the region comes up, this gets reset to false and the region will try again.
* Added SetChildAgentThrottle(byte[]) to IClientAPI 
* Several other insignificant changes related to passing child pertanant agent data from sim to sim.
2007-12-10 00:46:56 +00:00
Sean Dague
cace0e055c change PacketQueue to take the byte[] throttle instead
of the Packet to set the throttles
2007-12-09 14:47:18 +00:00
Jeff Ames
65b9fa9a5f added more packet handling stubs 2007-12-09 00:07:03 +00:00
Brian McBee
383eccc543 hackish code to allow emptying of trash. This really should be done on the inventory server, and not from the region.
Also: it appeared to work the first try, so I have probably done something horribly wrong.
2007-12-08 20:41:37 +00:00
Brian McBee
beca2373e1 Allow moving, deleting, and restoring objects in inventory.
Note: only tested in grid mode, and emptying trash is still not implemented.
2007-12-08 19:13:10 +00:00
MW
87b337ebf9 Enabled the TextureDownloadModule, so that hopefully I might get some feedback, as to if it makes the texture problem better or worse. As I plan/hope to work on texture/asset downloading this weekend. 2007-12-07 22:47:11 +00:00
Sean Dague
0aa982c252 move to PacketQueue for throttling. This has been tested with a couple
of people, but is enough of a change that more should try it out.  This
removes 500 lines from ClientView.cs in the process.
2007-12-07 21:30:01 +00:00
Adam Johnson
3d938f76b7 Updates to LibSL revision 1498. Thanks Johan! 2007-12-07 08:54:31 +00:00
Teravus Ovares
57f666497b * Added hacked support for 'anyone can move' and 'anyone can copy'.
* BACKUP YOUR PRIM BEFORE UPDATING TO THIS and then double check the prim permissions after applying it with a different avatar (then the master avatar or the prim owner avatar).
* Also, beware that any objects created under the old permission scheme may react oddly.  They may automatically allow anyone to modify them, (which you'll then have to un-set).  
* It's hacked support because when 'anyone can move is set', any avatar can modify the prim (texture, shape, scale, etc)
2007-12-07 07:42:03 +00:00
Sean Dague
9326ee425b added a lock to prevent multiple Timer popping races
on the packet queues.
2007-12-06 21:59:31 +00:00
Sean Dague
1ad83bcf1b reversing the r2599 patch, as this started causing CreateThread errors for
me on Mono 1.2.4, which led to client crashes.  I think the Timer.Stop() 
wasn't doing what was desired on Mono.  The Queue refactoring should address
the readability issues lbsa71 was working on as soon as I get the merge together.
2007-12-06 20:13:02 +00:00
Jeff Ames
73599c0f25 removed obsolete Verbose() function 2007-12-06 18:17:44 +00:00
lbsa71
395637acdd * now the throttle timer is stopped whilst processing Queue so that it won't fire twice
* started to refactored throttling method
* some code convention refactorings
2007-12-06 14:08:22 +00:00
Adam Frisby
9e5f7fb415 * Removed lots of scurrilous uses of ASCII/UTF8.GetBytes for making packet strings. BAD PROGRAMMER BAD. Use Helpers.StringToField instead. >_> 2007-12-06 06:36:49 +00:00
Teravus Ovares
bb824eadee * Refactored Permissions into ScenePresence as requested by MW
* Un-hackerized generating the client_flags 
* Now handling the ObjectPermissions Update packet 
* Warning: Backup your prim before updating.  If you fail to do so and something goes wrong then, All Yr prim are belong to us!
2007-12-05 06:44:32 +00:00
Jeff Ames
54c070608e made log messages for known unhandled packet types shorter and yellower. added handler stubs. 2007-12-04 21:44:10 +00:00
Sean Dague
2adcdd3d15 minor refactor so that I can now grok what happens for outgoing packets 2007-12-04 20:20:15 +00:00
Adam Frisby
91c1e8a734 * Fixed a whole bunch of console messages. 2007-12-04 10:13:13 +00:00
Sean Dague
8f58a9a107 From Justin Casey (IBM)
While exploring what it would take to get the 'new script' button working,
I encountered the fact, some way down in the rabbit hole, that if a user
renamed an item in their inventory and logged out (without a restart of
the simulator), on log in the new name was not preserved.

As far as I can see, this was because any updates which didn't occur
inside a transaction were ignored by opensim.  This patch pays attention
to those changes.  It generates a new asset when an item is updated and
changes the user's inventory properties appropriately.  I believe this
behaviour is in line with the copy-on-write semantics used in the Second
Life protocol - perhaps it could be optimized if we knew for sure that the
only copy of the object was in the user's inventory.

This also means that if you rename an item (e.g. a script) before you drag
it into an object's inventory, the inventory will receive the item's most
recent name and description.
2007-12-03 20:06:01 +00:00
Sean Dague
c29105aa3e This is a simple patch which just renames an IClientAPI method to
SendInventoryItemCreateUpdate() in order to reflect the actual packet it
sends (UpdateCreateInventoryItem).

From Justin Casey (IBM)
2007-12-03 17:24:27 +00:00
MW
27f182ac54 Part 1 of a commit. This revision will not compile, part 2 will be added in a couple of minutes that should fix that.
Some work towards persisting Avatar Appearance (what is being worn).
Added OnAvatarNowWearing event to IClientAPI that is triggered by AgentIsNowWearing packets.
stub code to subscribe to this event in AvatarFactoryModule. 
Todo: code needs to be added to AvatarFactoryModule to save the uuids to a database and then read them back when that modules TryGetIntialAvatarAppearance() method is called.
Done some changes to Scene to make it easier to subclass it: including changed some private fields to protected and made some methods virtual.
2007-12-01 14:20:37 +00:00
Sean Dague
b167507e32 Patch for mantis 0000015: Textures don't display in the object
properties window

From Justin Casey (IBM)
2007-11-30 20:16:40 +00:00
Sean Dague
641e541967 add a few more parens to make sure that throttling condition
is really happening the way we want it to.
2007-11-29 16:32:19 +00:00
Teravus Ovares
4bd38fc65a * Thanks to _SomeOne_, Server side permissions on object editing. Be aware, that if you're editing an object on your client that you're not allowed to, it'll appear that it's moving to you, but won't actually be moving on the sim. 2007-11-29 15:24:31 +00:00
Sean Dague
40dc1ac3b0 I believe this turns throttling back on. I had expected
that the Queue would come in by reference, but it didn't
appear to be.
2007-11-28 18:39:07 +00:00
Sean Dague
5fb81ab881 merged ClientView into a non partial class. Will
make it easier to start breaking this up into 
more discreet functional classes
2007-11-28 13:33:57 +00:00
Sean Dague
cebdd069f4 some variable renames to help me read the throttle code 2007-11-27 20:37:17 +00:00
Teravus Ovares
944b118c62 * Added a way for the Region master user to kick individual users from their sim with a custom message. Their client says, "You've been logged off of secondlife, <Your custom message here> and logs them off.
* Added a way for the Region master user to kick *ALL* users from *ALL* their regions in the estate with a custom message.
2007-11-24 03:28:42 +00:00
Teravus Ovares
2db19b7d65 * Added more comments
* Tweaked the esoteric throttler parameters again.
2007-11-22 23:56:44 +00:00
Teravus Ovares
f97aeab916 * Quelled a Log format exception in the logging routines.
* Tweaked some esoteric throttle settings
* Removed AgentThrottle from the unsupported packet list.
2007-11-22 21:40:53 +00:00
Teravus Ovares
999eec603e Created a client driven packet throttler. The sim now respects the client's network throttle settings but does sanity checks to avoid too little(nothing gets sent) or too much(the sim crashes) data.
* Consider this experimental..   however, it looks very promising.
2007-11-22 19:01:53 +00:00
Teravus Ovares
615b40b68b * Refactored IClientAPI.OutPacket to require a second mandatory parameter. This parameter has an enum:int ThrottleOutPacketType and contains types; Resend, Land, Wind, Cloud, Task, Texture, and Asset. 2007-11-18 15:54:05 +00:00
Dalien Talbot
8ebf75ec24 Revert the previous commit - indeed this needs to be fixed in a
different place...
2007-11-18 07:07:50 +00:00
Dalien Talbot
aa57b386b7 Trap the error during the logout with connections to multiple sims on
the same box (error in closecircuit) - temp band-aid, should have a 
better fix.
2007-11-18 06:33:15 +00:00
Teravus Ovares
9f6b3e2357 * Added AvatarPicker in Standalone mode. Works for finding avatar to ban, manually trying to add a friend (with the add button) or useful to those who are curious which usernames have visited your standalone sim. Important for future development :D.
* Grid mode always returns 0 results until the Grid Communications portion is done.
2007-11-13 22:48:19 +00:00
MW
297cc7ef4f Some work on cleanly removing Regions. 2007-11-13 12:23:05 +00:00
Sean Dague
6c77ae5507 add a few more verbose bits 2007-11-09 20:47:20 +00:00
Adam Frisby
7fb227ed1e * Protip: Commit AFTER compiling. 2007-11-09 02:38:26 +00:00
Adam Frisby
b7629d7a3d * Added some code to prevent a spinlock. 2007-11-09 02:31:40 +00:00
Adam Frisby
7861390f72 * Tweaked how the throttle works. 2007-11-09 02:26:26 +00:00
Adam Frisby
1875317127 * Tweaked throttle sizes. Throttle is now 256kbps outbound per client. 2007-11-09 02:24:14 +00:00
Adam Frisby
5099667844 * Added some *VERY* experimental highly dodgy throttling of outbound packets to help alleviate clients borking during massive amounts of updates. Needs work. 2007-11-09 02:22:01 +00:00
lbsa71
4fad66f855 * Diuerse beavtificatems 2007-11-01 19:19:05 +00:00
MW
a9ad16b13a some small changes 2007-10-31 09:18:24 +00:00
lbsa71
67e12b95ea * Optimized usings
* Shortened type references
* Removed redundant 'this' qualifier
2007-10-30 09:05:31 +00:00
MW
3d8219f6c7 as per the "Filesystem cleanup for OpenSim repository" mailing list thread. Have flattened the OpenSim.Framework project/namespace. The problem is that the namespace is still wrong as its "OpenSim.Framework" while the directory is "OpenSim\Framework\General" , so we need to decide if we change the directory or correct the namespace.
Note this has lead to a big flat project, but I think a lot of the files we most likely don't even use any longer. And others belong in other projects/namespaces anyway.
2007-10-29 21:46:25 +00:00
Adam Frisby
3143768468 * Removed plenty more untagged console messages. Everything now has shiny groups. :) 2007-10-22 22:37:39 +00:00
Adam Frisby
1313544ac7 * Major structural change: Begun converting Events to use (caller, args) syntax to conform with .NET guidelines.
* OnChatFromViewer has been converted as an example.
* Bug: SimpleApp's NPC client does not implement a Scene property and will likely crash with a NullReferenceException when it attempts to chat.
2007-10-19 22:02:07 +00:00
lbsa71
863195612b Reverting back to 2017 since 2018 were causing Linux breakage; reopening Tleiades patch 444 and 445. 2007-09-27 14:57:43 +00:00
lbsa71
8143c597fc * Tleiades grid mode inventory (#444) - thanx Tleiades!
* updated to rev 1413 on libsecondlife.dll and libsecondlife.dll.config (#423)
2007-09-27 13:25:45 +00:00