UbitUmarov
07d3d51c3b
Robust: only create shared webclients after reading config
2024-04-12 20:40:16 +01:00
UbitUmarov
c981f3c448
avoid a possible null ref
2024-04-11 02:42:05 +01:00
AdilElFarissi
dafc02ac80
Merge branch 'opensim:master' into master
2024-04-09 02:35:18 +00:00
UbitUmarov
5207b251c3
a few more useless changes
2024-04-08 21:43:03 +01:00
AdilElFarissi
efda155791
Merge branch 'opensim:master' into master
2024-04-08 07:17:51 +00:00
UbitUmarov
44b0d30561
a few more useless changes
2024-04-08 02:02:54 +01:00
UbitUmarov
f1cb40aa59
a few more useless changes
2024-04-07 22:26:51 +01:00
UbitUmarov
91d9c33128
replace some more wrong uses of dictionary containskey and other cosmetics
2024-04-07 20:28:56 +01:00
UbitUmarov
7dc520399c
also expire flotsam assets weakreferences on console expire ammand
2024-04-06 22:33:16 +01:00
UbitUmarov
bef7db808b
missing reference
2024-04-06 21:56:38 +01:00
UbitUmarov
50f818c480
also expire flotsam assets weakreferences
2024-04-06 21:54:36 +01:00
UbitUmarov
9b878933eb
oops missing dependency
2024-04-04 17:49:07 +01:00
UbitUmarov
d00dbe11c0
set gc memory high pressure to 50% of total memory (sadly it may decide to ignore); change show stats memory report; let robust also show memory on show stats
2024-04-04 17:45:38 +01:00
UbitUmarov
f51f81d53f
add some texture assets
2024-04-02 20:30:21 +01:00
UbitUmarov
58401238d5
reduce min size of header buffers to limit impact when osutf8 cache is empty
2024-04-02 01:27:16 +01:00
UbitUmarov
6c83782d49
cosmetics
2024-04-02 01:03:34 +01:00
UbitUmarov
54d2403252
cosmetics
2024-04-02 00:14:04 +01:00
UbitUmarov
1891b962dc
cosmetics
2024-04-01 21:53:32 +01:00
UbitUmarov
0d1b14c78f
do not do chained hg teleports
2024-03-31 00:44:50 +00:00
UbitUmarov
723a528b58
refuse some chars on HG url region name
2024-03-30 23:22:30 +00:00
UbitUmarov
ac49f8b8e8
use enum.getname instead of a hack
2024-03-30 18:36:37 +00:00
Adil El Farissi
cc79aa0c23
Add selfsigned certificates support to Robust and osGetLinkInventoryKeys plus some fixes
2024-03-29 03:56:03 +00:00
AdilElFarissi
7ddf60ad9f
Merge branch 'opensim:master' into master
2024-03-29 03:52:41 +00:00
UbitUmarov
ed0044564d
store linksetdata in sqlite and pgsql
2024-03-29 00:46:29 +00:00
UbitUmarov
8fbf905de5
oops
2024-03-28 22:32:00 +00:00
UbitUmarov
573af89389
store linksetdata in inventory and region mysql db ( others todo) UNTESTED
2024-03-28 22:03:14 +00:00
UbitUmarov
e918888e30
add llGetCameraAspect and llGetCameraFOV
2024-03-28 15:34:03 +00:00
UbitUmarov
45e49c480f
use ILGenerator ILOffset instead of old mono il offset
2024-03-27 21:54:39 +00:00
UbitUmarov
b8a0bba99d
mantis 9121: fix failed lsl string casts on lsl list sort
2024-03-27 21:51:49 +00:00
AdilElFarissi
88704a641f
Merge branch 'opensim:master' into master
2024-03-26 22:16:17 +00:00
UbitUmarov
acbec23f48
clean appdomain related things
2024-03-26 21:34:33 +00:00
UbitUmarov
782bad9944
and rename it again as just osGetLinkInventoryKey, so it is coerent with llGetInventoryKey (mantis 9119)
2024-03-26 18:32:05 +00:00
UbitUmarov
7c63ff1150
rename new osGetLinkInventoryItemKey as osGetLinkInventoryItemAssetKey
2024-03-24 11:34:23 +00:00
Jeff Kelley
1aa7bea608
osGetLinkInventoryAssetKey
...
deleted: bin/System.Drawing.Common.dll
Signed-off-by: UbitUmarov <ajlduarte@sapo.pt >
2024-03-24 11:25:09 +00:00
Adil El Farissi
681baf65f1
Basic implementation of SSL selfsigned certificates creation and renewal
...
Allows selfsigned certificates creation and renewal for local and external use. When enabled, will create a folder SSL\ and 2 sub folders SSL\ssl\ and SSL\src\. Next creates and store an RSA private key in SSL\src\ and the derived selfsigned certificates in SSL\ssl\ folder. Is also possible to renew the certificate on every server restart if CertRenewOnStartup is set to true.
Note: The SSL related params in the network section was adapted to be user friendly and allow the usage just by uncommenting the SSL params in both sections and a password change.
2024-03-20 01:12:49 +00:00
AdilElFarissi
3542d5461b
Merge branch 'opensim:master' into master
2024-03-19 21:50:59 +00:00
UbitUmarov
b70b5c07e3
revert to append all contents of .version file on the full version, if present and not empty
2024-03-11 00:18:05 +00:00
UbitUmarov
6905f1a71a
cosmetics
2024-03-10 16:56:12 +00:00
UbitUmarov
0d73a817cc
oops
2024-03-05 20:21:41 +00:00
UbitUmarov
6afa7d564b
same for osGetLinkInventoryItemKeys
2024-03-05 19:04:36 +00:00
UbitUmarov
f770fc8a0e
missing file
2024-03-05 18:52:48 +00:00
UbitUmarov
c618c4a6c4
rename the new osGetInventoryKeys as osgetinventoryitemkeys and osgetlinkinventorykey as osgetinventoryitemkey for coerence and to make clear that key means the item key within prim inventory and not its asset key as in ll funtion
2024-03-05 18:51:42 +00:00
UbitUmarov
52c287d8dc
manits 9118: fix clear of animesh flag on *GetPrimitiveParams
2024-03-04 23:48:13 +00:00
UbitUmarov
97b03f76c7
fix the last patch
2024-02-29 20:40:42 +00:00
Jeff Kelley
d58f9f0f5d
osGetSitTarget
...
Signed-off-by: UbitUmarov <ajlduarte@sapo.pt >
2024-02-29 20:28:20 +00:00
Adil El Farissi
df8fe33007
Last cosmetics and PHP/LSL test scripts
...
All is working fine :)
The following script send a request to the PHP file where the encrypted string using osAESEncrypt() is decrypted and re-encrypted using the PHP openssl_XXXX. the return is the original string and the re-encrypted separated by "|"... the script decrypt the returned re-encrypted using osAESDecrypt() and log it in the chat.
LSL script:
<pre><code>
// Change the url to point to your PHP file.
string url = "http://127.0.0.1/aesTest.php ";
string plainText = "Hello World :)";
string secret = "#!qUeRtY$@123^456€!#";
key r_id;
default
{
touch_start(integer i)
{
string encryptedText = osAESEncrypt(secret, plainText);
llOwnerSay("\nEncrypted with osAESEncrypt:\n"+ encryptedText);
r_id = llHTTPRequest(url, [HTTP_METHOD,"POST",HTTP_MIMETYPE,"application/x-www-form-urlencoded",HTTP_BODY_MAXLENGTH,"16384"], "data="+ encryptedText);
}
http_response(key id, integer status, list metaData, string Response){
if(status = 200 ){
if(id == r_id){
if(Response != ""){
list temp = llParseString2List(Response,"|",[]);
llOwnerSay("\nDecrypted using PHP openssl_decrypt:\n"+ llList2String(temp,0));
llOwnerSay("\nEncrypted using PHP openssl_encrypt:\n"+ llList2String(temp,1));
string decryptedText = osAESDecrypt(secret, llList2String(temp,1));
llOwnerSay("\nDecrypted with osAESDecrypt from PHP:\n"+ decryptedText);
}
else{
llOwnerSay("Enc/Dec Failed! Response:\n"+ Response);
}
}
}
else{
llOwnerSay("Destination not available.\nstatus: "+ status);
}
}
}
</code></pre>
The PHP file:
<pre><code>
<?php
if(getenv('REQUEST_METHOD') == 'POST') {
$script_data = file_get_contents("php://input");
if($script_data){
$data = $_POST['data'];
$secret = "#!qUeRtY$@123^456€!#";
$key = hex2bin(strtoupper(hash('sha256', $secret)));
$iv = hex2bin(strtoupper(explode(":", $data)[0]));
$encryptedText = hex2bin(strtoupper(explode(":", $data)[1]));
$plainText = openssl_decrypt($encryptedText, "AES-256-CBC", $key, $options=OPENSSL_RAW_DATA, $iv);
$retIv = openssl_random_pseudo_bytes(16);
$reEncrypted = openssl_encrypt($plainText, "AES-256-CBC", $key, $options=OPENSSL_RAW_DATA, $retIv);
echo $plainText && $reEncrypted ? $plainText."|".bin2hex($retIv).":".bin2hex($reEncrypted) : "";
}
};
?>
</code></pre>
Co-Authored-By: Ubit Umarov <469643+UbitUmarov@users.noreply.github.com >
2024-02-29 01:09:20 +00:00
UbitUmarov
ab4b690ffd
fis AES encoding
2024-02-27 20:21:35 +00:00
UbitUmarov
18ec6d6380
cosmetics
2024-02-26 18:07:50 +00:00
Adil El Farissi
60214e6e81
Add 2 OSSL functions to the LinkInventory collection
...
Add Functions:
+ osGiveLinkInventoryList(integer linkNumber, key destination, string category, list inventory)
Give a group of items located in a child prim inventory
+ osRemoveLinkInventory(integer linkNumber, string name)
Remove an item from a child prim inventory
LSL Script example:
<pre><code>
default
{
touch_start(integer a){
integer linkNumber = llDetectedLinkNumber(0);
list linkInventoryNames = osGetLinkInventoryNames(linkNumber, INVENTORY_ALL);
osGiveLinkInventoryList(linkNumber, llDetectedKey(0), llGetLinkName(linkNumber), linkInventoryNames);
for(integer i = 0; i < llGetListLength(linkInventoryNames); i++){
osRemoveLinkInventory(linkNumber, llList2String(linkInventoryNames, i));
}
}
}
</code></pre>
2024-02-25 07:14:49 +00:00
UbitUmarov
f4e14aba6d
fix webstats SStats defualt answer
2024-02-24 16:36:15 +00:00