aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework
diff options
context:
space:
mode:
authorJustin Clarke Casey2008-11-11 17:02:46 +0000
committerJustin Clarke Casey2008-11-11 17:02:46 +0000
commit97816f8c901bf56e3b29bdbd5f8e320de352f45f (patch)
tree30fdd6962a11fda115da1b2cb8340a4d64b763b1 /OpenSim/Framework
parentMantis#2604. Thank you kindly, Diva for a patch that: (diff)
downloadopensim-SC-97816f8c901bf56e3b29bdbd5f8e320de352f45f.zip
opensim-SC-97816f8c901bf56e3b29bdbd5f8e320de352f45f.tar.gz
opensim-SC-97816f8c901bf56e3b29bdbd5f8e320de352f45f.tar.bz2
opensim-SC-97816f8c901bf56e3b29bdbd5f8e320de352f45f.tar.xz
* Implement basic region filtering as described in https://lists.berlios.de/pipermail/opensim-dev/2008-November/003468.html
* This is done by sending a 'major interface version' number on sim registration. Developers must increment this every time they make a change that would make the previous OpenSim revision failure incompatible with the new one (non-fatal incompatibilities are fine). * This number resides in OpenSim.Framework.Servers.VersionInfo.MajorInterfaceVersion * This allows the grid service to stop older, incompatible regions from connecting
Diffstat (limited to 'OpenSim/Framework')
-rw-r--r--OpenSim/Framework/Servers/BaseOpenSimServer.cs19
-rw-r--r--OpenSim/Framework/Servers/VersionInfo.cs22
-rw-r--r--OpenSim/Framework/Util.cs27
3 files changed, 46 insertions, 22 deletions
diff --git a/OpenSim/Framework/Servers/BaseOpenSimServer.cs b/OpenSim/Framework/Servers/BaseOpenSimServer.cs
index 36f8d2e..aa93f6e 100644
--- a/OpenSim/Framework/Servers/BaseOpenSimServer.cs
+++ b/OpenSim/Framework/Servers/BaseOpenSimServer.cs
@@ -428,25 +428,6 @@ namespace OpenSim.Framework.Servers
428 } 428 }
429 429
430 m_version += string.IsNullOrEmpty(buildVersion) ? " " : ("." + buildVersion + " ").Substring(0, 6); 430 m_version += string.IsNullOrEmpty(buildVersion) ? " " : ("." + buildVersion + " ").Substring(0, 6);
431
432 // Add operating system information if available
433 string OSString = "";
434
435 if (System.Environment.OSVersion.Platform != PlatformID.Unix)
436 {
437 OSString = System.Environment.OSVersion.ToString();
438 }
439 else
440 {
441 OSString = Util.ReadEtcIssue();
442 }
443
444 if (OSString.Length > 45)
445 {
446 OSString = OSString.Substring(0, 45);
447 }
448
449 m_version += " (OS " + OSString + ")";
450 } 431 }
451 } 432 }
452} 433}
diff --git a/OpenSim/Framework/Servers/VersionInfo.cs b/OpenSim/Framework/Servers/VersionInfo.cs
index 8f84859..c6a43ec 100644
--- a/OpenSim/Framework/Servers/VersionInfo.cs
+++ b/OpenSim/Framework/Servers/VersionInfo.cs
@@ -27,11 +27,27 @@
27 27
28namespace OpenSim 28namespace OpenSim
29{ 29{
30 /// <summary>
31 /// This is the OpenSim version string. Change this if you are releasing a new OpenSim version.
32 /// </summary>
33 public class VersionInfo 30 public class VersionInfo
34 { 31 {
32 /// <value>
33 /// This is the OpenSim version string. Change this if you are releasing a new OpenSim version.
34 /// </value>
35 public readonly static string Version = "OpenSimulator Server 0.6.0"; // stay with 27 chars (used in regioninfo) 35 public readonly static string Version = "OpenSimulator Server 0.6.0"; // stay with 27 chars (used in regioninfo)
36
37 /// <value>
38 /// This is the external interface version. It is separate from the OpenSimulator project version.
39 ///
40 /// This version number should be
41 /// increased by 1 every time a code change makes the previous OpenSimulator revision incompatible
42 /// with the new revision. This will usually be due to interregion or grid facing interface changes.
43 ///
44 /// Changes which are compatible with an older revision (e.g. older revisions experience degraded functionality
45 /// but not outright failure) do not need a version number increment.
46 ///
47 /// Having this version number allows the grid service to reject connections from regions running a version
48 /// of the code that is too old.
49 ///
50 /// </value>
51 public readonly static int MajorInterfaceVersion = 0;
36 } 52 }
37} 53}
diff --git a/OpenSim/Framework/Util.cs b/OpenSim/Framework/Util.cs
index 7caa414..f72797f 100644
--- a/OpenSim/Framework/Util.cs
+++ b/OpenSim/Framework/Util.cs
@@ -799,6 +799,33 @@ namespace OpenSim.Framework
799 x += rx; 799 x += rx;
800 y += ry; 800 y += ry;
801 } 801 }
802
803 /// <summary>
804 /// Get operating system information if available. Returns only the first 45 characters of information
805 /// </summary>
806 /// <returns>
807 /// Operating system information. Returns an empty string if none was available.
808 /// </returns>
809 public static string GetOperatingSystemInformation()
810 {
811 string os = String.Empty;
812
813 if (System.Environment.OSVersion.Platform != PlatformID.Unix)
814 {
815 os = System.Environment.OSVersion.ToString();
816 }
817 else
818 {
819 os = ReadEtcIssue();
820 }
821
822 if (os.Length > 45)
823 {
824 os = os.Substring(0, 45);
825 }
826
827 return os;
828 }
802 829
803 /// <summary> 830 /// <summary>
804 /// Is the given string a UUID? 831 /// Is the given string a UUID?