Several improvements in the connectors themselves.
Several improvements in configurations.
Needed to add a hack in IUserService and UserManagerBase, to be removed when that service is refactored.
* For some reason, if a null was recieved (indicating a missing asset), the code had stopped passing that on to the waiting lock, resulting in a perpetual freeze
* This change passes the null on correctly
* Many thanks to thomax for being insistent in presenting his analysis of the problem :)
The attached patch implements llPassTouches. It has been added
to the export/import XML along with the flag for AllowedInventoryDrop.
The MySQL backend has been updated as well, though I haven't
done one of those before so could do with a check. I added
the migration mysql file as well.
The other data backends need updating as well.
The attached patch implements llPassTouches. It has been added
to the export/import XML along with the flag for AllowedInventoryDrop.
The MySQL backend has been updated as well, though I haven't
done one of those before so could do with a check. I added
the migration mysql file as well.
The other data backends need updating as well.
This may break a lot of things, but it needs to go in. It was tested in standalone and the UCI grid, but it needs a lot more testing.
Known problems:
* HG asset transfers are borked for now
* missing texture is missing
* 3 unit tests commented out for now
further ACL stuff:
- adding StrictAccessControl variable: DON'T set this to false if you
want to enforce ACL, it will disable ACLs right now. Default is
true.
once we've got code added to allow child agents but prevent them
from becoming root agents when the ACL denies access to the avatar,
setting this to false will then allow avatars to see into a
neighboring region but not enter it (currently ACL prevent both,
seeing and entering).
- enhancing log statements
- AssetType isn't InventoryType. Those enums contain different numbers. Use AssetType for the asset type, InventoryType for the inventory type.
- The ToString method (or ToLower) of AssetType/InventoryType doesn't necessarily return the correct LLSD string.
- Replaced several magic numbers by their corresponding enum.
- Fixed the invType for gestures and animations in the library.
This should fix Mantis #3610 and the non-terminating inventory loading
Scene.NewUserConnection()
- adding reason reporting
this enforces estate bans very early on and prevents us from
circulating client objects that we'd then have to retract once we
realize that the client is not allowed into the region
Move json stats to non-published resource name
Remove well-known resource name for json stats,
creating dynamic uris with private keys and add
a user configurable resource name for region owner usage.
Don't allow packets to be resent before they have actually been sent for the
first time. Switch from serializing a packet to get it's length to the LibOMV
provided Length property. Fix resend timing. Fix the use of dangling references
to Acked packets. Fix the packet handler to play nice with the packet pool.
Fix the packet pool. Add data block recycling to the packet pool. Packet pool
is now ENABLED by default. Add config option to disable packet and data block
reuse. Add ObjectUpdate and ImprovedTerseObjectUpdate to the packets being
recycled.
arbitrary combinations of root and child prims from one or multiple
link sets. Please test throughly and consider things UNSTABLE until
this is proven out.
If an avatar is sitting when the client disconnects, the avatar
is not disassociated from the SOG on which (s)he was sat. This
produces any, and varied, effects.
I have updated RemoveCLient in Scene, to check, and stand the
client up immediately prior to disconnect. This seems like the
most robust way to handle the situation. Though in this case
it might be worth factoring out the animations from other
standup processing. It does no harm, but in this case it is
entirely redundant.
Added support for access control lists.
Scene: Added test to AddNewClient for an entry in the access
list when connecting to a region with limited access.
EstateSettings: Added an HasAccess(UUID) property to test for
an entry in the estate's access list.
RemoteAdmin: Add RPC calls for admin_acl_list, clear, add,
and remove.
llSetPrimitiveParams in a large linkset can disrupt the
entire region. However, when the script is in a large
linkset, it appears to totally lag out the scene and
stops updates from being sent.
Changes to enable script state persistence across non-restart
serialization situations (inventory/OAR/attachments)
Also fixing test cases for OAR and IAR so they don't barf with the new code.
An attachment with the physical checkbox checked will not allow the
phantom checkbox to be cleared. This interfers with scripting
functions such as llMoveToTarget(), which won't work while an object
is phantom. If the prim containing the script is rezzed to the ground,
it will then allow the phantom checlbox to be cleared, and the script
works as expected.
This patch adds few properties to ScenePresence and
thus allows region module or MRM script:
1. Force flying for avatar or,
2. Disable flying from avatar