InWorldz

Where your Dreams are our Vision!

It is currently Sat Jun 23, 2018 2:23 am | All times are UTC - 6 hours
 Page 1 of 4 [ 37 posts ]  Go to page 1, 2, 3, 4  Next
Author Message
 Post subject: InWorldz Halcyon Server 0.9.23
PostPosted: Wed Apr 06, 2016 3:36 am 
User avatar

Joined: Mon Jun 07, 2010 7:07 pm
Posts: 7936
Location: Nova Scotia, Canada
It's that time again when we try to package up the fixes and enhancements we have so far and bundle them into the next release.

This update is now running on the InWorldz Beta grid, as well as running on the main grid on InWorldz Sandbox 1 through 6 regions. If you find any issues on those regions, please report them in this thread, thanks.

Update: We're delaying the rollout until next Tuesday while I investigate a possible regression problem report. If further testing goes well, this update will be applied to all regions, overnight beginning Tuesday April 19, into Wednesday morning.

InWorldz Halcyon Server 0.9.23 R5955

LSL Scripting
- Implemented iwValidateURL function, which allows a scripter to verify if a URL is formatted correctly according to the HTTP, HTTPS, and WWW schemes.
- Improved argument handling in iwStringCodec to allow codec names to be case-insensitive, and allowed cryptographic hashes to be specified with or without a dash (e.g.: sha512 vs sha-512).
- Relaxed botGetPos to not require ownership of the target bot. This makes botGetPos consistent with botGetName, etc. in that any script can get the position of a bot in the region. It is not only available to the owner, and is not privileged info. See viewtopic.php?f=17&t=21338&p=194059#p194059
- Tweak to error message of llRemoteLoadScriptPin when PIN is wrong. The error now differentiates from failure due to the wrong PIN being set and failure due to no PIN being set.
- For performance and security reasons, llRemoteLoadScriptPin will now give an error message and return if the PIN is zero.
- llGetMemoryLimit respects Phlox's recent increased 128KB memory limit.
- Fixed llJsonSetValue with zero values, empty strings, and other cases. (Fixes Mantis #3174 and Mantis #3182.)
- Fixed the format of the User-Agent from LSL scripts calling llHTTPRequest, which was not accepted at some servers, notably Shoutcast servers. They would reject (with a 403) calls from InWorldz scripts that would work unchanged in SL. (Fixes Mantis #3194.)
- llHTTPRequest now supports many more custom headers: "accept", "content-length", "content-type", "expect", "host", "date", "if-modified-since", "range", "transfer-encoding" (auto-enabling chunked sends), and "connection"
(including recognizing keep-alive).
- Duplicate custom headers passed to llHTTPRequest now append as comma-separated values if that custom header already exists. This matches SL behavior.
- Much simpler implementation and cleaned up SimChat methods used by llSay, llRegionSay, llOwnerSay, llShout, llWhisper, etc.
- [R5942] Restored previous "(Mozilla compatible)" suffix on User-Agent headers from llHTTPRequest. The User-Agent change fixed some Shoutcast servers and broke others. The best combination is SL-compatible prefix, with original IW "(Mozilla Compatible)" suffix. We will continue to need that for other server types anyway.
- [R5942] Disabled the blocking of User-Agent headers in llHTTPRequest calls, i.e. allow them to be specified in custom headers, since we don't support the SL kludge of appending them to the end of the URL in a multi-line hack (and won't be, since it seems like a major security risk anyway). Allows scripters to provide a specific User-Agent as needed by the destination server.
- [R5955] Fixed the region position associated with dialog replies (button presses), which was causing them to sometimes appear to be out of range to be heard by the listener object, resulting in dialog menu buttons being ignored if the owner was in the region. Fixes Mantis 3206. Thanks to Judy Muircastle, Chuck String and Ayiana Cerna for helping us track this one down.

Behavior and Reliability
- Fairly significant fixes to the memory management of bot clients, avatar "scene presence" objects and region "scene view" objects to avoid sending updates to bot clients which did not recognize or process them, and hanging on to object references, resulting in possibly large region memory leaks.
- Fixed the implementation of the teleport routing value: "Blocked". (Fixes Mantis #3201.)
- Fixed the server to recognize a region restart time of -1 as a region restart abort request.
- Code related to region chat methods was cleaned up and made much simpler.
- Viewer protocol fixes to add support for missing AlertInfo parameters. Proper implemenations for HomePositionSet and RegionSecondsRestart alerts.
- Fixed a possible null reference exception in the user friend permissions checks. Seen on IDI when there were bots.
- Changes to XML files (especially region.XML) are now committed out-of-place. This avoids cases where a 0-length region.xml file was created when the VM is out of disk space.
- Changed the code that saves the last map UUID to not rewrite the whole XML file twice.
- Added a more informative server console error message on netacl errors.
- The "forcegc" console command now includes command options to specify the maximum generation, and forced mode.
- Fixed SQL field and trigger creation issues in new Halcyon installations.


Last edited by Jim Tarber on Fri May 13, 2016 2:26 pm, edited 9 times in total.

Offline
 Profile  
 
 Post subject: Re: InWorldz Halcyon Server 0.9.23
PostPosted: Wed Apr 06, 2016 7:12 am 
User avatar

Joined: Fri Jul 29, 2011 2:10 pm
Posts: 3989
Location: France
:tup:



_________________
Elfs are in virtual worlds to share a vision of a wonderful life :-)
Elven bards and storytellers
"Elf Dream" for Elf living
"Shedrupling University" science
YichTrains Elven Works Lysaer Gortax Robots
Offline
 Profile  
 
 Post subject: Re: InWorldz Halcyon Server 0.9.23
PostPosted: Fri Apr 08, 2016 12:50 pm 

Joined: Fri Apr 13, 2012 1:57 pm
Posts: 13
Location: Canada
HTTPRequest to Shoutcast server V2 are now working.

HTTPRequest to Shoutcast stream still using server V1 are no longer working and getting error 499 , The server committed a protocol violation. Section=ResponseStatusLine

string STREAMURL="http://108.61.73.118:10030"; //use to test shoutcast serverV1
default
{
state_entry()
{
llHTTPRequest(STREAMURL + "/7.html",[HTTP_CUSTOM_HEADER,"User-Agent","LSL Script (Mozilla Compatible)\n\n"], "");
}
http_response(key id, integer status, list metadata, string body)
{
llSay(0,(string)id);
llSay(0,(string)status);
llSay(0,body);
}
}


Offline
 Profile  
 
 Post subject: Re: InWorldz Halcyon Server 0.9.23
PostPosted: Fri Apr 08, 2016 2:51 pm 

Joined: Wed Oct 26, 2011 8:21 am
Posts: 582
I'll test with SC1 tonite. I make *heavy* use of that in all my shoutcast radio products


Offline
 Profile  
 
 Post subject: Re: InWorldz Halcyon Server 0.9.23
PostPosted: Fri Apr 08, 2016 3:05 pm 

Joined: Wed Oct 26, 2011 8:21 am
Posts: 582
I can confirm this breaks all my existing radios.

[14:00] AMV Shoutcast Club Tuner v1.6 (Golden Skye): Status is 499 body=The server committed a protocol violation. Section=ResponseStatusLine

Code snippet for the request:

    if (stream_type == SHOUTCAST)
    {
        // If we fall through to here send a poll
        string url = llStringTrim(stream_url,STRING_TRIM);
        if (llGetSubString(url, -1, -1) == "/")
            url = llGetSubString(url, 0, -2);
       
        //url = url + "/7.html";
        httprequest_key = llHTTPRequest(url + "/7.html", [],"");
    }

So I'm not adding *any* additional header options.

I'll test a few other products I have that use networking but I suspect this isn't just a shoutcast specific issue.

Mike


Offline
 Profile  
 
 Post subject: Re: InWorldz Halcyon Server 0.9.23
PostPosted: Fri Apr 08, 2016 3:11 pm 

Joined: Wed Oct 26, 2011 8:21 am
Posts: 582
My events board is ok. So something related to talking to the shoutcast api is broken. Though nothing has changed with how I am calling it.


Offline
 Profile  
 
 Post subject: Re: InWorldz Halcyon Server 0.9.23
PostPosted: Fri Apr 08, 2016 4:15 pm 

Joined: Fri Apr 13, 2012 1:57 pm
Posts: 13
Location: Canada
i Also did other test on my other product calling for a HTTPRequest and they do all work. Just now my radio that are broken

wondering is this as to do something with it

http-equiv="Pragma" content="no-cache"

taken from the source of the reply


Offline
 Profile  
 
 Post subject: Re: InWorldz Halcyon Server 0.9.23
PostPosted: Fri Apr 08, 2016 7:38 pm 
User avatar

Joined: Mon Jun 07, 2010 7:07 pm
Posts: 7936
Location: Nova Scotia, Canada
We've been investigating the connection problems with some remote servers; it seems that the change to the "user-agent" header fixed connections to Marteen's original Shoutcast server but broke others. We think we have a happy medium now which works with all (fixing Marteen's original report without breaking others).

I'll be restarting the beta grid and the main grid InWorldz Sandbox 1-6 regions in a few minutes with an update.


Offline
 Profile  
 
 Post subject: Re: InWorldz Halcyon Server 0.9.23
PostPosted: Fri Apr 08, 2016 8:11 pm 

Joined: Fri Apr 13, 2012 1:57 pm
Posts: 13
Location: Canada
tested it whitout custom hearder and it those work on both SC1 and SC2
thanks


Offline
 Profile  
 
 Post subject: Re: InWorldz Halcyon Server 0.9.23
PostPosted: Mon Apr 18, 2016 12:58 am 
User avatar

Joined: Mon Jun 07, 2010 7:07 pm
Posts: 7936
Location: Nova Scotia, Canada
As the next stage of testing before Tuesday night's grid-wide rollout, we'll be starting the update to all InWorldz Straits and Ocean regions in a few minutes.


Last edited by Jim Tarber on Mon Apr 18, 2016 2:30 am, edited 1 time in total.

Offline
 Profile  
 
Display posts from previous:  Sort by  
 Page 1 of 4 [ 37 posts ]  Go to page 1, 2, 3, 4  Next


Who is online

Users browsing this forum: Google [Bot] and 4 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  

Site Navigation