2020-08-26 04:22:45 +00:00
<!DOCTYPE html > < html > < head > < meta http-equiv = "X-UA-Compatible" content = "IE=edge" / > < meta content = "width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name = "viewport" / > < title > PSF-LoginServer - master - net.psforever.util< / title > < meta content = "PSF - LoginServer - master - net.psforever.util" name = "description" / > < meta content = "PSF LoginServer master net.psforever.util" name = "keywords" / > < meta http-equiv = "content-type" content = "text/html; charset=UTF-8" / > < link href = "../../../lib/index.css" media = "screen" type = "text/css" rel = "stylesheet" / > < link href = "../../../lib/template.css" media = "screen" type = "text/css" rel = "stylesheet" / > < link href = "../../../lib/print.css" media = "print" type = "text/css" rel = "stylesheet" / > < link href = "../../../lib/diagrams.css" media = "screen" type = "text/css" rel = "stylesheet" id = "diagrams-css" / > < script type = "text/javascript" src = "../../../lib/jquery.min.js" > < / script > < script type = "text/javascript" src = "../../../lib/index.js" > < / script > < script type = "text/javascript" src = "../../../index.js" > < / script > < script type = "text/javascript" src = "../../../lib/scheduler.js" > < / script > < script type = "text/javascript" src = "../../../lib/template.js" > < / script > < script type = "text/javascript" > / * t h i s v a r i a b l e c a n b e u s e d b y t h e J S t o d e t e r m i n e t h e p a t h t o t h e r o o t d o c u m e n t * /
2023-07-11 01:20:49 +00:00
var toRoot = '../../../';< / script > < / head > < body > < div id = "search" > < span id = "doc-title" > PSF-LoginServer - < span id = "doc-version" > master< / span > < / span > < span class = "close-results" > < span class = "left" > < < / span > Back< / span > < div id = "textfilter" > < span class = "input" > < input autocapitalize = "none" placeholder = "Search" id = "index-input" type = "text" accesskey = "/" / > < i class = "clear material-icons" > < / i > < i id = "search-icon" class = "material-icons" > < / i > < / span > < / div > < / div > < div id = "search-results" > < div id = "search-progress" > < div id = "progress-fill" > < / div > < / div > < div id = "results-content" > < div id = "entity-results" > < / div > < div id = "member-results" > < / div > < / div > < / div > < div id = "content-scroll-container" style = "-webkit-overflow-scrolling: touch;" > < div id = "content-container" style = "-webkit-overflow-scrolling: touch;" > < div id = "subpackage-spacer" > < div id = "packages" > < h1 > Packages< / h1 > < ul > < li class = "indented0 " name = "_root_.root" group = "Ungrouped" fullComment = "yes" data-isabs = "false" visbl = "pub" > < a id = "_root_" class = "anchorToMember" > < / a > < a id = "root:_root_" class = "anchorToMember" > < / a > < span class = "permalink" > < a href = "../../../index.html" title = "Permalink" > < i class = "material-icons" > < / i > < / a > < / span > < span class = "modifier_kind" > < span class = "modifier" > < / span > < span class = "kind" > package< / span > < / span > < span class = "symbol" > < a href = "../../../index.html" title = "" > < span class = "name" > root< / span > < / a > < / span > < div class = "fullcomment" > < dl class = "attributes block" > < dt > Definition Classes< / dt > < dd > < a href = "../../../index.html" name = "_root_" id = "_root_" class = "extype" > root< / a > < / dd > < / dl > < / div > < / li > < li class = "indented1 " name = "_root_.net" group = "Ungrouped" fullComment = "yes" data-isabs = "false" visbl = "pub" > < a id = "net" class = "anchorToMember" > < / a > < a id = "net:net" class = "anchorToMember" > < / a > < span class = "permalink" > < a href = "../../../net/index.html" title = "Permalink" > < i class = "material-icons" > < / i > < / a > < / span > < span class = "modifier_kind" > < span class = "modifier" > < / span > < span class = "kind" > package< / span > < / span > < span class = "symbol" > < a href = "../../index.html" title = "" > < span class = "name" > net< / span > < / a > < / span > < div class = "fullcomment" > < dl class = "attributes block" > < dt > Definition Classes< / dt > < dd > < a href = "../../../index.html" name = "_root_" id = "_root_" class = "extype" > root< / a > < / dd > < / dl > < / div > < / li > < li class = "indented2 " name = "net.psforever" group = "Ungrouped" fullComment = "yes" data-isabs = "false" visbl = "pub" > < a id = "psforever" class = "anchorToMember" > < / a > < a id = "psforever:psforever" class = "anchorToMember" > < / a > < span class = "permalink" > < a href = "../../../net/psforever/index.html" title = "Permalink" > < i class = "material-icons" > < / i > < / a > < / span > < span class = "modifier_kind" > < span class = "modifier" > < / span > < span class = "kind" > package< / span > < / span > < span class = "symbol" > < a href = "../index.html" title = "" > < span class = "name" > psforever< / span > < / a > < / span > < div class = "fullcomment" > < dl class = "attributes block" > < dt > Definition Classes< / dt > < dd > < a href = "../../index.html" name = "net" id = "net" class = "extype" > net< / a > < / dd > < / dl > < / div > < / li > < li class = "indented3 " name = "net.psforever.actors" group = "Ungrouped" fullComment = "yes" data-isabs = "false" visbl = "pub" > < a id = "actors" class = "anchorToMember" > < / a > < a id = "actors:actors" class = "anchorToMember" > < / a > < span class = "permalink" > < a href = "../../../net/psforever/actors/index.html" title = "Permalink" > < i class = "material-icons" > < / i > < / a > < / span > < span class = "modifier_kind" > < span class = "modifier" > < / span > < span class = "kind" > package< / span > < / span > < span class = "symbol" > < a href = "../actors/index.html" title = "" > < span class = "name" > actors< / span > < / a > < / span > < div class = "fullcomment" > < dl class = "attributes block" > < dt > Definition Classes< / dt > < dd > < a href = "../index.html" name = "net.psforever" id = "net.psforever" class = "extype" > psforever< / a > < / dd > < / dl > < / div > < / li > < li class = "indented3 " name = "net.psforever.filters" group = "Ungrouped" fullComment = "yes" data-isabs = "false" visbl = "pub" > < a id = "filters" class = "anchorToMember" > < / a > < a id = "filters:filters" class = "anchorToMember" > < / a > < span class = "permalink" > < a href = "../../../net/psforever/filters/index.html" title = "Permalink" > < i class = "material-icons" > < / i > < / a > < / span > < span class = "m
2020-09-26 22:13:05 +00:00
We can not use Java's built-in DH because it requires much larger p values than the ones that are used
2023-07-11 01:20:49 +00:00
for key exchange by the client (which are 128 bits).< / p > < / li > < li class = "indented0 " name = "net.psforever.util.GameConfig" group = "Ungrouped" fullComment = "no" data-isabs = "false" visbl = "pub" > < a id = "GameConfigextendsProductwithSerializable" class = "anchorToMember" > < / a > < a id = "GameConfig:GameConfig" class = "anchorToMember" > < / a > < span class = "permalink" > < a href = "../../../net/psforever/util/GameConfig.html" title = "Permalink" > < i class = "material-icons" > < / i > < / a > < / span > < span class = "modifier_kind" > < span class = "modifier" > < / span > < span class = "kind" > case class< / span > < / span > < span class = "symbol" > < a href = "GameConfig.html" title = "" > < span class = "name" > GameConfig< / span > < / a > < span class = "params" > (< span name = "instantAction" > instantAction: < a href = "InstantActionConfig.html" name = "net.psforever.util.InstantActionConfig" id = "net.psforever.util.InstantActionConfig" class = "extype" > InstantActionConfig< / a > < / span > , < span name = "amenityAutorepairRate" > amenityAutorepairRate: < span name = "scala.Float" class = "extype" > Float< / span > < / span > , < span name = "amenityAutorepairDrainRate" > amenityAutorepairDrainRate: < span name = "scala.Float" class = "extype" > Float< / span > < / span > , < span name = "bepRate" > bepRate: < span name = "scala.Double" class = "extype" > Double< / span > < / span > , < span name = "cepRate" > cepRate: < span name = "scala.Double" class = "extype" > Double< / span > < / span > , < span name = "newAvatar" > newAvatar: < a href = "NewAvatar.html" name = "net.psforever.util.NewAvatar" id = "net.psforever.util.NewAvatar" class = "extype" > NewAvatar< / a > < / span > , < span name = "hart" > hart: < a href = "HartConfig.html" name = "net.psforever.util.HartConfig" id = "net.psforever.util.HartConfig" class = "extype" > HartConfig< / a > < / span > , < span name = "sharedMaxCooldown" > sharedMaxCooldown: < span name = "scala.Boolean" class = "extype" > Boolean< / span > < / span > , < span name = "sharedBfrCooldown" > sharedBfrCooldown: < span name = "scala.Boolean" class = "extype" > Boolean< / span > < / span > , < span name = "baseCertifications" > baseCertifications: < span name = "scala.Seq" class = "extype" > Seq< / span > [< a href = "../objects/avatar/Certification.html" name = "net.psforever.objects.avatar.Certification" id = "net.psforever.objects.avatar.Certification" class = "extype" > Certification< / a > ]< / span > , < span name = "warpGates" > warpGates: < a href = "WarpGateConfig.html" name = "net.psforever.util.WarpGateConfig" id = "net.psforever.util.WarpGateConfig" class = "extype" > WarpGateConfig< / a > < / span > , < span name = "cavernRotation" > cavernRotation: < a href = "CavernRotationConfig.html" name = "net.psforever.util.CavernRotationConfig" id = "net.psforever.util.CavernRotationConfig" class = "extype" > CavernRotationConfig< / a > < / span > , < span name = "savedMsg" > savedMsg: < a href = "SavedMessageEvents.html" name = "net.psforever.util.SavedMessageEvents" id = "net.psforever.util.SavedMessageEvents" class = "extype" > SavedMessageEvents< / a > < / span > , < span name = "playerDraw" > playerDraw: < a href = "PlayerStateDrawSettings.html" name = "net.psforever.util.PlayerStateDrawSettings" id = "net.psforever.util.PlayerStateDrawSettings" class = "extype" > PlayerStateDrawSettings< / a > < / span > , < span name = "doorsCanBeOpenedByMedAppFromThisDistance" > doorsCanBeOpenedByMedAppFromThisDistance: < span name = "scala.Float" class = "extype" > Float< / span > < / span > )< / span > < span class = "result" > extends < span name = "scala.Product" class = "extype" > Product< / span > with < span name = "scala.Serializable" class = "extype" > Serializable< / span > < / span > < / span > < / li > < li class = "indented0 " name = "net.psforever.util.HartConfig" group = "Ungrouped" fullComment = "no" data-isabs = "false" visbl = "pub" > < a id = "HartConfigextendsProductwithSerializable" class = "anchorToMember" > < / a > < a id = "HartConfig:HartConfig" class = "anchorToMember" > < / a > < span class = "permalink" > < a href = "../../../net/psforever/util/HartConfig.html" title = "Permalink" > < i class = "material-icons" > < / i > < / a > < / span > < span class = "modifier_kind" > < span class = "modifier" > < / span > < span class = "kind" > case class< / span > < / span > < span class = "symbol" > < a href = "HartConfig.html" title = "" > < span class = "name" > HartConfig< / span > < / a > < span class = "params" > (< span name = "inFlightDuration" > inFlightDuration: < span name = "scala.Long" class = "extype" > Long< / span > < / span > , < span name = "boardingD
Not to be confused with HMAC-MD5.
A description of the algorithm can be found at http://cacr.uwaterloo.ca/hac/about/chap9.pdf, 9.69 Algorithm MD5-MAC.
There are two implementations:
one from older versions of CryptoPP (2007),
and one from OpenCL (2001) (nowadays called Botan and not to be confused with the OpenCL standard from Khronos).
Both libraries have since removed this code.
This file is a Scala port of the OpenCL implementation.
2020-09-26 22:13:05 +00:00
Source: https://github.com/sghiassy/Code-Reading-Book/blob/master/OpenCL/src/md5mac.cpp
2023-07-27 03:11:34 +00:00
< / p > < / div > < / div > < / li > < li class = "indented0 " name = "net.psforever.util.Md5MacState" group = "Ungrouped" fullComment = "no" data-isabs = "false" visbl = "pub" > < a id = "Md5MacStateextendsProductwithSerializable" class = "anchorToMember" > < / a > < a id = "Md5MacState:Md5MacState" class = "anchorToMember" > < / a > < span class = "permalink" > < a href = "../../../net/psforever/util/Md5MacState.html" title = "Permalink" > < i class = "material-icons" > < / i > < / a > < / span > < span class = "modifier_kind" > < span class = "modifier" > sealed < / span > < span class = "kind" > case class< / span > < / span > < span class = "symbol" > < a href = "Md5MacState.html" title = "" > < span class = "name" > Md5MacState< / span > < / a > < span class = "params" > (< span name = "buffer" > buffer: < span name = "scala.collection.mutable.ArrayBuffer" class = "extype" > ArrayBuffer< / span > [< span name = "scala.Byte" class = "extype" > Byte< / span > ]< / span > , < span name = "digest" > digest: < span name = "scala.collection.mutable.ArrayBuffer" class = "extype" > ArrayBuffer< / span > [< span name = "scala.Byte" class = "extype" > Byte< / span > ]< / span > , < span name = "m" > m: < span name = "scala.collection.mutable.ArrayBuffer" class = "extype" > ArrayBuffer< / span > [< span name = "scala.Byte" class = "extype" > Byte< / span > ]< / span > , < span name = "k1" > k1: < span name = "scala.collection.mutable.ArrayBuffer" class = "extype" > ArrayBuffer< / span > [< span name = "scala.Byte" class = "extype" > Byte< / span > ]< / span > , < span name = "k2" > k2: < span name = "scala.collection.mutable.ArrayBuffer" class = "extype" > ArrayBuffer< / span > [< span name = "scala.Byte" class = "extype" > Byte< / span > ]< / span > , < span name = "k3" > k3: < span name = "scala.collection.mutable.ArrayBuffer" class = "extype" > ArrayBuffer< / span > [< span name = "scala.Byte" class = "extype" > Byte< / span > ]< / span > )< / span > < span class = "result" > extends < span name = "scala.Product" class = "extype" > Product< / span > with < span name = "scala.Serializable" class = "extype" > Serializable< / span > < / span > < / span > < / li > < li class = "indented0 " name = "net.psforever.util.MiddlewareConfig" group = "Ungrouped" fullComment = "no" data-isabs = "false" visbl = "pub" > < a id = "MiddlewareConfigextendsProductwithSerializable" class = "anchorToMember" > < / a > < a id = "MiddlewareConfig:MiddlewareConfig" class = "anchorToMember" > < / a > < span class = "permalink" > < a href = "../../../net/psforever/util/MiddlewareConfig.html" title = "Permalink" > < i class = "material-icons" > < / i > < / a > < / span > < span class = "modifier_kind" > < span class = "modifier" > < / span > < span class = "kind" > case class< / span > < / span > < span class = "symbol" > < a href = "MiddlewareConfig.html" title = "" > < span class = "name" > MiddlewareConfig< / span > < / a > < span class = "params" > (< span name = "packetBundlingDelay" > packetBundlingDelay: < span name = "scala.concurrent.duration.FiniteDuration" class = "extype" > FiniteDuration< / span > < / span > , < span name = "packetBundlingDelayMultiplier" > packetBundlingDelayMultiplier: < span name = "scala.Float" class = "extype" > Float< / span > < / span > , < span name = "inReorderTimeout" > inReorderTimeout: < span name = "scala.concurrent.duration.FiniteDuration" class = "extype" > FiniteDuration< / span > < / span > , < span name = "inSubslotMissingDelay" > inSubslotMissingDelay: < span name = "scala.concurrent.duration.FiniteDuration" class = "extype" > FiniteDuration< / span > < / span > , < span name = "inSubslotMissingAttempts" > inSubslotMissingAttempts: < span name = "scala.Int" class = "extype" > Int< / span > < / span > )< / span > < span class = "result" > extends < span name = "scala.Product" class = "extype" > Product< / span > with < span name = "scala.Serializable" class = "extype" > Serializable< / span > < / span > < / span > < / li > < li class = "indented0 " name = "net.psforever.util.NetSimConfig" group = "Ungrouped" fullComment = "no" data-isabs = "false" visbl = "pub" > < a id = "NetSimConfigextendsProductwithSerializable" class = "anchorToMember" > < / a > < a id = "NetSimConfig:NetSimConfig" class = "anchorToMember" > < / a > < span class = "permalink" > < a href = "../../../net/psforever/util/NetSimConfig.html" title = "Permalink" > < i class = "material-icons" > < / i > < / a > < / span > < span class = "modifier_kind" > < span class = "modifier" > < / span > < span class = "kind" > case class< / span > < / span > < span class = "symbol" > < a href = "NetSimConfig.html" title = "" > < span class = "name" > NetSimConfig< / span > < / a > < span class = "params" > (< span name = "enable" > enable: < span name = "scala.Boolean" class =
2020-08-26 04:22:45 +00:00
The information is mainly catered to the simulation of the CSR commands < code > /zone< / code > and < code > /warp< / code > .
2023-07-11 01:20:49 +00:00
(The exception is < code > alias< / code > which is maintained for cosmetic purposes and clarification.)< / p > < / div > < / div > < / li > < li class = "indented0 " name = "net.psforever.util.SavedMessageEvents" group = "Ungrouped" fullComment = "no" data-isabs = "false" visbl = "pub" > < a id = "SavedMessageEventsextendsProductwithSerializable" class = "anchorToMember" > < / a > < a id = "SavedMessageEvents:SavedMessageEvents" class = "anchorToMember" > < / a > < span class = "permalink" > < a href = "../../../net/psforever/util/SavedMessageEvents.html" title = "Permalink" > < i class = "material-icons" > < / i > < / a > < / span > < span class = "modifier_kind" > < span class = "modifier" > < / span > < span class = "kind" > case class< / span > < / span > < span class = "symbol" > < a href = "SavedMessageEvents.html" title = "" > < span class = "name" > SavedMessageEvents< / span > < / a > < span class = "params" > (< span name = "short" > short: < a href = "SavedMessageTimings.html" name = "net.psforever.util.SavedMessageTimings" id = "net.psforever.util.SavedMessageTimings" class = "extype" > SavedMessageTimings< / a > < / span > , < span name = "renewal" > renewal: < a href = "SavedMessageTimings.html" name = "net.psforever.util.SavedMessageTimings" id = "net.psforever.util.SavedMessageTimings" class = "extype" > SavedMessageTimings< / a > < / span > , < span name = "interruptedByAction" > interruptedByAction: < a href = "SavedMessageTimings.html" name = "net.psforever.util.SavedMessageTimings" id = "net.psforever.util.SavedMessageTimings" class = "extype" > SavedMessageTimings< / a > < / span > )< / span > < span class = "result" > extends < span name = "scala.Product" class = "extype" > Product< / span > with < span name = "scala.Serializable" class = "extype" > Serializable< / span > < / span > < / span > < / li > < li class = "indented0 " name = "net.psforever.util.SavedMessageTimings" group = "Ungrouped" fullComment = "no" data-isabs = "false" visbl = "pub" > < a id = "SavedMessageTimingsextendsProductwithSerializable" class = "anchorToMember" > < / a > < a id = "SavedMessageTimings:SavedMessageTimings" class = "anchorToMember" > < / a > < span class = "permalink" > < a href = "../../../net/psforever/util/SavedMessageTimings.html" title = "Permalink" > < i class = "material-icons" > < / i > < / a > < / span > < span class = "modifier_kind" > < span class = "modifier" > < / span > < span class = "kind" > case class< / span > < / span > < span class = "symbol" > < a href = "SavedMessageTimings.html" title = "" > < span class = "name" > SavedMessageTimings< / span > < / a > < span class = "params" > (< span name = "fixed" > fixed: < span name = "scala.Long" class = "extype" > Long< / span > < / span > , < span name = "variable" > variable: < span name = "scala.Long" class = "extype" > Long< / span > < / span > )< / span > < span class = "result" > extends < span name = "scala.Product" class = "extype" > Product< / span > with < span name = "scala.Serializable" class = "extype" > Serializable< / span > < / span > < / span > < / li > < li class = "indented0 " name = "net.psforever.util.SentryConfig" group = "Ungrouped" fullComment = "no" data-isabs = "false" visbl = "pub" > < a id = "SentryConfigextendsProductwithSerializable" class = "anchorToMember" > < / a > < a id = "SentryConfig:SentryConfig" class = "anchorToMember" > < / a > < span class = "permalink" > < a href = "../../../net/psforever/util/SentryConfig.html" title = "Permalink" > < i class = "material-icons" > < / i > < / a > < / span > < span class = "modifier_kind" > < span class = "modifier" > < / span > < span class = "kind" > case class< / span > < / span > < span class = "symbol" > < a href = "SentryConfig.html" title = "" > < span class = "name" > SentryConfig< / span > < / a > < span class = "params" > (< span name = "enable" > enable: < span name = "scala.Boolean" class = "extype" > Boolean< / span > < / span > , < span name = "dsn" > dsn: < span name = "scala.Predef.String" class = "extype" > String< / span > < / span > )< / span > < span class = "result" > extends < span name = "scala.Product" class = "extype" > Product< / span > with < span name = "scala.Serializable" class = "extype" > Serializable< / span > < / span > < / span > < / li > < li class = "indented0 " name = "net.psforever.util.SessionConfig" group = "Ungrouped" fullComment = "no" data-isabs = "false" visbl = "pub" > < a id = "SessionConfigextendsProductwithSerializable" class = "anchorToMember" > < / a > < a id = "SessionConfig:SessionConfig" class = "anchorToMember" > < / a > < span class = "permalink" > < a href = "../../../net/psforever/util/SessionConfig.html" title = "Permalink" > < i class = "material-icons" > < / i > < / a > < / span > < span class = "modifier_kin