diff options
Diffstat (limited to 'OpenSim/Framework/General/UserProfileData.cs')
-rw-r--r-- | OpenSim/Framework/General/UserProfileData.cs | 426 |
1 files changed, 213 insertions, 213 deletions
diff --git a/OpenSim/Framework/General/UserProfileData.cs b/OpenSim/Framework/General/UserProfileData.cs index ed70246..d10aa36 100644 --- a/OpenSim/Framework/General/UserProfileData.cs +++ b/OpenSim/Framework/General/UserProfileData.cs | |||
@@ -1,214 +1,214 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (c) Contributors, http://opensimulator.org/ | 2 | * Copyright (c) Contributors, http://opensimulator.org/ |
3 | * See CONTRIBUTORS.TXT for a full list of copyright holders. | 3 | * See CONTRIBUTORS.TXT for a full list of copyright holders. |
4 | * | 4 | * |
5 | * Redistribution and use in source and binary forms, with or without | 5 | * Redistribution and use in source and binary forms, with or without |
6 | * modification, are permitted provided that the following conditions are met: | 6 | * modification, are permitted provided that the following conditions are met: |
7 | * * Redistributions of source code must retain the above copyright | 7 | * * Redistributions of source code must retain the above copyright |
8 | * notice, this list of conditions and the following disclaimer. | 8 | * notice, this list of conditions and the following disclaimer. |
9 | * * Redistributions in binary form must reproduce the above copyright | 9 | * * Redistributions in binary form must reproduce the above copyright |
10 | * notice, this list of conditions and the following disclaimer in the | 10 | * notice, this list of conditions and the following disclaimer in the |
11 | * documentation and/or other materials provided with the distribution. | 11 | * documentation and/or other materials provided with the distribution. |
12 | * * Neither the name of the OpenSim Project nor the | 12 | * * Neither the name of the OpenSim Project nor the |
13 | * names of its contributors may be used to endorse or promote products | 13 | * names of its contributors may be used to endorse or promote products |
14 | * derived from this software without specific prior written permission. | 14 | * derived from this software without specific prior written permission. |
15 | * | 15 | * |
16 | * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY | 16 | * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY |
17 | * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | 17 | * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
18 | * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | 18 | * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
19 | * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY | 19 | * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY |
20 | * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | 20 | * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
21 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | 21 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; |
22 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND | 22 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND |
23 | * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 23 | * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
24 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | 24 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
25 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 25 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
26 | * | 26 | * |
27 | */ | 27 | */ |
28 | using System; | 28 | using System; |
29 | using libsecondlife; | 29 | using libsecondlife; |
30 | 30 | ||
31 | namespace OpenSim.Framework | 31 | namespace OpenSim.Framework |
32 | { | 32 | { |
33 | /// <summary> | 33 | /// <summary> |
34 | /// Information about a particular user known to the userserver | 34 | /// Information about a particular user known to the userserver |
35 | /// </summary> | 35 | /// </summary> |
36 | public class UserProfileData | 36 | public class UserProfileData |
37 | { | 37 | { |
38 | /// <summary> | 38 | /// <summary> |
39 | /// The ID value for this user | 39 | /// The ID value for this user |
40 | /// </summary> | 40 | /// </summary> |
41 | public LLUUID UUID; | 41 | public LLUUID UUID; |
42 | 42 | ||
43 | /// <summary> | 43 | /// <summary> |
44 | /// The first component of a users account name | 44 | /// The first component of a users account name |
45 | /// </summary> | 45 | /// </summary> |
46 | public string username; | 46 | public string username; |
47 | 47 | ||
48 | /// <summary> | 48 | /// <summary> |
49 | /// The second component of a users account name | 49 | /// The second component of a users account name |
50 | /// </summary> | 50 | /// </summary> |
51 | public string surname; | 51 | public string surname; |
52 | 52 | ||
53 | /// <summary> | 53 | /// <summary> |
54 | /// A salted hash containing the users password, in the format md5(md5(password) + ":" + salt) | 54 | /// A salted hash containing the users password, in the format md5(md5(password) + ":" + salt) |
55 | /// </summary> | 55 | /// </summary> |
56 | /// <remarks>This is double MD5'd because the client sends an unsalted MD5 to the loginserver</remarks> | 56 | /// <remarks>This is double MD5'd because the client sends an unsalted MD5 to the loginserver</remarks> |
57 | public string passwordHash; | 57 | public string passwordHash; |
58 | 58 | ||
59 | /// <summary> | 59 | /// <summary> |
60 | /// The salt used for the users hash, should be 32 bytes or longer | 60 | /// The salt used for the users hash, should be 32 bytes or longer |
61 | /// </summary> | 61 | /// </summary> |
62 | public string passwordSalt; | 62 | public string passwordSalt; |
63 | 63 | ||
64 | /// <summary> | 64 | /// <summary> |
65 | /// The regionhandle of the users preffered home region. If multiple sims occupy the same spot, the grid may decide which region the user logs into | 65 | /// The regionhandle of the users preffered home region. If multiple sims occupy the same spot, the grid may decide which region the user logs into |
66 | /// </summary> | 66 | /// </summary> |
67 | public ulong homeRegion | 67 | public ulong homeRegion |
68 | { | 68 | { |
69 | get { return Helpers.UIntsToLong((homeRegionX*256), (homeRegionY*256)); } | 69 | get { return Helpers.UIntsToLong((homeRegionX*256), (homeRegionY*256)); } |
70 | set | 70 | set |
71 | { | 71 | { |
72 | homeRegionX = (uint) (value >> 40); | 72 | homeRegionX = (uint) (value >> 40); |
73 | homeRegionY = (((uint) (value)) >> 8); | 73 | homeRegionY = (((uint) (value)) >> 8); |
74 | } | 74 | } |
75 | } | 75 | } |
76 | 76 | ||
77 | public uint homeRegionX; | 77 | public uint homeRegionX; |
78 | public uint homeRegionY; | 78 | public uint homeRegionY; |
79 | 79 | ||
80 | /// <summary> | 80 | /// <summary> |
81 | /// The coordinates inside the region of the home location | 81 | /// The coordinates inside the region of the home location |
82 | /// </summary> | 82 | /// </summary> |
83 | public LLVector3 homeLocation; | 83 | public LLVector3 homeLocation; |
84 | 84 | ||
85 | /// <summary> | 85 | /// <summary> |
86 | /// Where the user will be looking when they rez. | 86 | /// Where the user will be looking when they rez. |
87 | /// </summary> | 87 | /// </summary> |
88 | public LLVector3 homeLookAt; | 88 | public LLVector3 homeLookAt; |
89 | 89 | ||
90 | /// <summary> | 90 | /// <summary> |
91 | /// A UNIX Timestamp (seconds since epoch) for the users creation | 91 | /// A UNIX Timestamp (seconds since epoch) for the users creation |
92 | /// </summary> | 92 | /// </summary> |
93 | public int created; | 93 | public int created; |
94 | 94 | ||
95 | /// <summary> | 95 | /// <summary> |
96 | /// A UNIX Timestamp for the users last login date / time | 96 | /// A UNIX Timestamp for the users last login date / time |
97 | /// </summary> | 97 | /// </summary> |
98 | public int lastLogin; | 98 | public int lastLogin; |
99 | 99 | ||
100 | public LLUUID rootInventoryFolderID; | 100 | public LLUUID rootInventoryFolderID; |
101 | 101 | ||
102 | /// <summary> | 102 | /// <summary> |
103 | /// A URI to the users inventory server, used for foreigners and large grids | 103 | /// A URI to the users inventory server, used for foreigners and large grids |
104 | /// </summary> | 104 | /// </summary> |
105 | public string userInventoryURI = String.Empty; | 105 | public string userInventoryURI = String.Empty; |
106 | 106 | ||
107 | /// <summary> | 107 | /// <summary> |
108 | /// A URI to the users asset server, used for foreigners and large grids. | 108 | /// A URI to the users asset server, used for foreigners and large grids. |
109 | /// </summary> | 109 | /// </summary> |
110 | public string userAssetURI = String.Empty; | 110 | public string userAssetURI = String.Empty; |
111 | 111 | ||
112 | /// <summary> | 112 | /// <summary> |
113 | /// A uint mask containing the "I can do" fields of the users profile | 113 | /// A uint mask containing the "I can do" fields of the users profile |
114 | /// </summary> | 114 | /// </summary> |
115 | public uint profileCanDoMask; | 115 | public uint profileCanDoMask; |
116 | 116 | ||
117 | /// <summary> | 117 | /// <summary> |
118 | /// A uint mask containing the "I want to do" part of the users profile | 118 | /// A uint mask containing the "I want to do" part of the users profile |
119 | /// </summary> | 119 | /// </summary> |
120 | public uint profileWantDoMask; // Profile window "I want to" mask | 120 | public uint profileWantDoMask; // Profile window "I want to" mask |
121 | 121 | ||
122 | /// <summary> | 122 | /// <summary> |
123 | /// The about text listed in a users profile. | 123 | /// The about text listed in a users profile. |
124 | /// </summary> | 124 | /// </summary> |
125 | public string profileAboutText = String.Empty; | 125 | public string profileAboutText = String.Empty; |
126 | 126 | ||
127 | /// <summary> | 127 | /// <summary> |
128 | /// The first life about text listed in a users profile | 128 | /// The first life about text listed in a users profile |
129 | /// </summary> | 129 | /// </summary> |
130 | public string profileFirstText = String.Empty; | 130 | public string profileFirstText = String.Empty; |
131 | 131 | ||
132 | /// <summary> | 132 | /// <summary> |
133 | /// The profile image for an avatar stored on the asset server | 133 | /// The profile image for an avatar stored on the asset server |
134 | /// </summary> | 134 | /// </summary> |
135 | public LLUUID profileImage; | 135 | public LLUUID profileImage; |
136 | 136 | ||
137 | /// <summary> | 137 | /// <summary> |
138 | /// The profile image for the users first life tab | 138 | /// The profile image for the users first life tab |
139 | /// </summary> | 139 | /// </summary> |
140 | public LLUUID profileFirstImage; | 140 | public LLUUID profileFirstImage; |
141 | 141 | ||
142 | /// <summary> | 142 | /// <summary> |
143 | /// The users last registered agent (filled in on the user server) | 143 | /// The users last registered agent (filled in on the user server) |
144 | /// </summary> | 144 | /// </summary> |
145 | public UserAgentData currentAgent; | 145 | public UserAgentData currentAgent; |
146 | } | 146 | } |
147 | 147 | ||
148 | /// <summary> | 148 | /// <summary> |
149 | /// Information about a users session | 149 | /// Information about a users session |
150 | /// </summary> | 150 | /// </summary> |
151 | public class UserAgentData | 151 | public class UserAgentData |
152 | { | 152 | { |
153 | /// <summary> | 153 | /// <summary> |
154 | /// The UUID of the users avatar (not the agent!) | 154 | /// The UUID of the users avatar (not the agent!) |
155 | /// </summary> | 155 | /// </summary> |
156 | public LLUUID UUID; | 156 | public LLUUID UUID; |
157 | 157 | ||
158 | /// <summary> | 158 | /// <summary> |
159 | /// The IP address of the user | 159 | /// The IP address of the user |
160 | /// </summary> | 160 | /// </summary> |
161 | public string agentIP = String.Empty; | 161 | public string agentIP = String.Empty; |
162 | 162 | ||
163 | /// <summary> | 163 | /// <summary> |
164 | /// The port of the user | 164 | /// The port of the user |
165 | /// </summary> | 165 | /// </summary> |
166 | public uint agentPort; | 166 | public uint agentPort; |
167 | 167 | ||
168 | /// <summary> | 168 | /// <summary> |
169 | /// Is the user online? | 169 | /// Is the user online? |
170 | /// </summary> | 170 | /// </summary> |
171 | public bool agentOnline; | 171 | public bool agentOnline; |
172 | 172 | ||
173 | /// <summary> | 173 | /// <summary> |
174 | /// The session ID for the user (also the agent ID) | 174 | /// The session ID for the user (also the agent ID) |
175 | /// </summary> | 175 | /// </summary> |
176 | public LLUUID sessionID; | 176 | public LLUUID sessionID; |
177 | 177 | ||
178 | /// <summary> | 178 | /// <summary> |
179 | /// The "secure" session ID for the user | 179 | /// The "secure" session ID for the user |
180 | /// </summary> | 180 | /// </summary> |
181 | /// <remarks>Not very secure. Dont rely on it for anything more than Linden Lab does.</remarks> | 181 | /// <remarks>Not very secure. Dont rely on it for anything more than Linden Lab does.</remarks> |
182 | public LLUUID secureSessionID; | 182 | public LLUUID secureSessionID; |
183 | 183 | ||
184 | /// <summary> | 184 | /// <summary> |
185 | /// The region the user logged into initially | 185 | /// The region the user logged into initially |
186 | /// </summary> | 186 | /// </summary> |
187 | public LLUUID regionID; | 187 | public LLUUID regionID; |
188 | 188 | ||
189 | /// <summary> | 189 | /// <summary> |
190 | /// A unix timestamp from when the user logged in | 190 | /// A unix timestamp from when the user logged in |
191 | /// </summary> | 191 | /// </summary> |
192 | public int loginTime; | 192 | public int loginTime; |
193 | 193 | ||
194 | /// <summary> | 194 | /// <summary> |
195 | /// When this agent expired and logged out, 0 if still online | 195 | /// When this agent expired and logged out, 0 if still online |
196 | /// </summary> | 196 | /// </summary> |
197 | public int logoutTime; | 197 | public int logoutTime; |
198 | 198 | ||
199 | /// <summary> | 199 | /// <summary> |
200 | /// Current region the user is logged into | 200 | /// Current region the user is logged into |
201 | /// </summary> | 201 | /// </summary> |
202 | public LLUUID currentRegion; | 202 | public LLUUID currentRegion; |
203 | 203 | ||
204 | /// <summary> | 204 | /// <summary> |
205 | /// Region handle of the current region the user is in | 205 | /// Region handle of the current region the user is in |
206 | /// </summary> | 206 | /// </summary> |
207 | public ulong currentHandle; | 207 | public ulong currentHandle; |
208 | 208 | ||
209 | /// <summary> | 209 | /// <summary> |
210 | /// The position of the user within the region | 210 | /// The position of the user within the region |
211 | /// </summary> | 211 | /// </summary> |
212 | public LLVector3 currentPos; | 212 | public LLVector3 currentPos; |
213 | } | 213 | } |
214 | } \ No newline at end of file | 214 | } \ No newline at end of file |