ccgo_linux_386.go 116 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046
  1. // Code generated for linux/386 by 'generator -no-main-minimize -DHAVE_LIBBSD --prefix-enumerator=_ --prefix-external=x_ --prefix-field=F --prefix-macro=m_ --prefix-static-internal=_ --prefix-static-none=_ --prefix-tagged-enum=_ --prefix-tagged-struct=T --prefix-tagged-union=T --prefix-typename=T --prefix-undefined=_ -extended-errors -ignore-unsupported-alignment -ignore-link-errors -I /home/jnml/src/modernc.org/builder/.exclude/modernc.org/libbsd/include/linux/386 -lbsd -o libxdmcp.go --package-name libxdmcp .libs/libXdmcp.a', DO NOT EDIT.
  2. //go:build linux && 386
  3. package libxdmcp
  4. import (
  5. "reflect"
  6. "unsafe"
  7. "modernc.org/libbsd"
  8. "modernc.org/libc"
  9. )
  10. var _ reflect.Type
  11. var _ unsafe.Pointer
  12. const m_AT_EACCESS = 0x200
  13. const m_AT_EMPTY_PATH = 0x1000
  14. const m_AT_NO_AUTOMOUNT = 0x800
  15. const m_AT_RECURSIVE = 0x8000
  16. const m_AT_REMOVEDIR = 0x200
  17. const m_AT_STATX_DONT_SYNC = 0x4000
  18. const m_AT_STATX_FORCE_SYNC = 0x2000
  19. const m_AT_STATX_SYNC_AS_STAT = 0x0000
  20. const m_AT_STATX_SYNC_TYPE = 0x6000
  21. const m_AT_SYMLINK_FOLLOW = 0x400
  22. const m_AT_SYMLINK_NOFOLLOW = 0x100
  23. const m_Above = 0
  24. const m_AllTemporary = 0
  25. const m_AllocAll = 1
  26. const m_AllocNone = 0
  27. const m_AllowExposures = 1
  28. const m_AlreadyGrabbed = 1
  29. const m_Always = 2
  30. const m_AnyButton = 0
  31. const m_AnyKey = 0
  32. const m_AnyPropertyType = 0
  33. const m_ArcChord = 0
  34. const m_ArcPieSlice = 1
  35. const m_AsyncBoth = 6
  36. const m_AsyncKeyboard = 3
  37. const m_AsyncPointer = 0
  38. const m_AutoRepeatModeDefault = 2
  39. const m_AutoRepeatModeOff = 0
  40. const m_AutoRepeatModeOn = 1
  41. const m_BIG_ENDIAN = "__BIG_ENDIAN"
  42. const m_BYTE_ORDER = "__BYTE_ORDER"
  43. const m_BadAccess = 10
  44. const m_BadAlloc = 11
  45. const m_BadAtom = 5
  46. const m_BadColor = 12
  47. const m_BadCursor = 6
  48. const m_BadDrawable = 9
  49. const m_BadFont = 7
  50. const m_BadGC = 13
  51. const m_BadIDChoice = 14
  52. const m_BadImplementation = 17
  53. const m_BadLength = 16
  54. const m_BadMatch = 8
  55. const m_BadName = 15
  56. const m_BadPixmap = 4
  57. const m_BadRequest = 1
  58. const m_BadValue = 2
  59. const m_BadWindow = 3
  60. const m_Below = 1
  61. const m_BottomIf = 3
  62. const m_Button1 = 1
  63. const m_Button2 = 2
  64. const m_Button3 = 3
  65. const m_Button4 = 4
  66. const m_Button5 = 5
  67. const m_ButtonPress = 4
  68. const m_ButtonRelease = 5
  69. const m_CLOCKS_PER_SEC = 1000000
  70. const m_CLOCK_BOOTTIME = 7
  71. const m_CLOCK_BOOTTIME_ALARM = 9
  72. const m_CLOCK_MONOTONIC = 1
  73. const m_CLOCK_MONOTONIC_COARSE = 6
  74. const m_CLOCK_MONOTONIC_RAW = 4
  75. const m_CLOCK_PROCESS_CPUTIME_ID = 2
  76. const m_CLOCK_REALTIME = 0
  77. const m_CLOCK_REALTIME_ALARM = 8
  78. const m_CLOCK_REALTIME_COARSE = 5
  79. const m_CLOCK_SGI_CYCLE = 10
  80. const m_CLOCK_TAI = 11
  81. const m_CLOCK_THREAD_CPUTIME_ID = 3
  82. const m_CapButt = 1
  83. const m_CapNotLast = 0
  84. const m_CapProjecting = 3
  85. const m_CapRound = 2
  86. const m_CenterGravity = 5
  87. const m_CirculateNotify = 26
  88. const m_CirculateRequest = 27
  89. const m_ClientMessage = 33
  90. const m_ClipByChildren = 0
  91. const m_ColormapInstalled = 1
  92. const m_ColormapNotify = 32
  93. const m_ColormapUninstalled = 0
  94. const m_Complex = 0
  95. const m_ConfigureNotify = 22
  96. const m_ConfigureRequest = 23
  97. const m_ControlMapIndex = 2
  98. const m_Convex = 2
  99. const m_CoordModeOrigin = 0
  100. const m_CoordModePrevious = 1
  101. const m_CopyFromParent = 0
  102. const m_CreateNotify = 16
  103. const m_CurrentTime = 0
  104. const m_CursorShape = 0
  105. const m_DN_ACCESS = 0x00000001
  106. const m_DN_ATTRIB = 0x00000020
  107. const m_DN_CREATE = 0x00000004
  108. const m_DN_DELETE = 0x00000008
  109. const m_DN_MODIFY = 0x00000002
  110. const m_DN_MULTISHOT = 0x80000000
  111. const m_DN_RENAME = 0x00000010
  112. const m_DefaultBlanking = 2
  113. const m_DefaultExposures = 2
  114. const m_DestroyAll = 0
  115. const m_DestroyNotify = 17
  116. const m_DirectColor = 5
  117. const m_DisableAccess = 0
  118. const m_DisableScreenInterval = 0
  119. const m_DisableScreenSaver = 0
  120. const m_DontAllowExposures = 0
  121. const m_DontPreferBlanking = 0
  122. const m_EXIT_FAILURE = 1
  123. const m_EXIT_SUCCESS = 0
  124. const m_EastGravity = 6
  125. const m_EnableAccess = 1
  126. const m_EnterNotify = 7
  127. const m_EvenOddRule = 0
  128. const m_Expose = 12
  129. const m_FALLOC_FL_KEEP_SIZE = 1
  130. const m_FALLOC_FL_PUNCH_HOLE = 2
  131. const m_FALSE = 0
  132. const m_FAPPEND = "O_APPEND"
  133. const m_FASYNC = "O_ASYNC"
  134. const m_FD_CLOEXEC = 1
  135. const m_FD_SETSIZE = 1024
  136. const m_FFSYNC = "O_SYNC"
  137. const m_FNDELAY = "O_NDELAY"
  138. const m_FNONBLOCK = "O_NONBLOCK"
  139. const m_FUNCPROTO = 15
  140. const m_F_ADD_SEALS = 1033
  141. const m_F_CANCELLK = 1029
  142. const m_F_DUPFD = 0
  143. const m_F_DUPFD_CLOEXEC = 1030
  144. const m_F_GETFD = 1
  145. const m_F_GETFL = 3
  146. const m_F_GETLEASE = 1025
  147. const m_F_GETLK = 12
  148. const m_F_GETOWN = 9
  149. const m_F_GETOWNER_UIDS = 17
  150. const m_F_GETOWN_EX = 16
  151. const m_F_GETPIPE_SZ = 1032
  152. const m_F_GETSIG = 11
  153. const m_F_GET_FILE_RW_HINT = 1037
  154. const m_F_GET_RW_HINT = 1035
  155. const m_F_GET_SEALS = 1034
  156. const m_F_LOCK = 1
  157. const m_F_NOTIFY = 1026
  158. const m_F_OFD_GETLK = 36
  159. const m_F_OFD_SETLK = 37
  160. const m_F_OFD_SETLKW = 38
  161. const m_F_OK = 0
  162. const m_F_OWNER_GID = 2
  163. const m_F_OWNER_PGRP = 2
  164. const m_F_OWNER_PID = 1
  165. const m_F_OWNER_TID = 0
  166. const m_F_RDLCK = 0
  167. const m_F_SEAL_FUTURE_WRITE = 0x0010
  168. const m_F_SEAL_GROW = 0x0004
  169. const m_F_SEAL_SEAL = 0x0001
  170. const m_F_SEAL_SHRINK = 0x0002
  171. const m_F_SEAL_WRITE = 0x0008
  172. const m_F_SETFD = 2
  173. const m_F_SETFL = 4
  174. const m_F_SETLEASE = 1024
  175. const m_F_SETLK = 13
  176. const m_F_SETLKW = 14
  177. const m_F_SETOWN = 8
  178. const m_F_SETOWN_EX = 15
  179. const m_F_SETPIPE_SZ = 1031
  180. const m_F_SETSIG = 10
  181. const m_F_SET_FILE_RW_HINT = 1038
  182. const m_F_SET_RW_HINT = 1036
  183. const m_F_TEST = 3
  184. const m_F_TLOCK = 2
  185. const m_F_ULOCK = 0
  186. const m_F_UNLCK = 2
  187. const m_F_WRLCK = 1
  188. const m_FamilyChaos = 2
  189. const m_FamilyDECnet = 1
  190. const m_FamilyInternet = 0
  191. const m_FamilyInternet6 = 6
  192. const m_FamilyServerInterpreted = 5
  193. const m_FillOpaqueStippled = 3
  194. const m_FillSolid = 0
  195. const m_FillStippled = 2
  196. const m_FillTiled = 1
  197. const m_FirstExtensionError = 128
  198. const m_FocusIn = 9
  199. const m_FocusOut = 10
  200. const m_FontChange = 255
  201. const m_FontLeftToRight = 0
  202. const m_FontRightToLeft = 1
  203. const m_ForgetGravity = 0
  204. const m_GCLastBit = 22
  205. const m_GXand = 0x1
  206. const m_GXandInverted = 0x4
  207. const m_GXandReverse = 0x2
  208. const m_GXclear = 0x0
  209. const m_GXcopy = 0x3
  210. const m_GXcopyInverted = 0xc
  211. const m_GXequiv = 0x9
  212. const m_GXinvert = 0xa
  213. const m_GXnand = 0xe
  214. const m_GXnoop = 0x5
  215. const m_GXnor = 0x8
  216. const m_GXor = 0x7
  217. const m_GXorInverted = 0xd
  218. const m_GXorReverse = 0xb
  219. const m_GXset = 0xf
  220. const m_GXxor = 0x6
  221. const m_GenericEvent = 35
  222. const m_GrabFrozen = 4
  223. const m_GrabInvalidTime = 2
  224. const m_GrabModeAsync = 1
  225. const m_GrabModeSync = 0
  226. const m_GrabNotViewable = 3
  227. const m_GrabSuccess = 0
  228. const m_GraphicsExpose = 13
  229. const m_GravityNotify = 24
  230. const m_GrayScale = 1
  231. const m_HASXDMAUTH = 1
  232. const m_HAVE_ARC4RANDOM_BUF = 1
  233. const m_HAVE_CONFIG_H = 1
  234. const m_HAVE_DLFCN_H = 1
  235. const m_HAVE_INTTYPES_H = 1
  236. const m_HAVE_LIBBSD = 1
  237. const m_HAVE_LRAND48 = 1
  238. const m_HAVE_MEMORY_H = 1
  239. const m_HAVE_SRAND48 = 1
  240. const m_HAVE_STDINT_H = 1
  241. const m_HAVE_STDLIB_H = 1
  242. const m_HAVE_STRINGS_H = 1
  243. const m_HAVE_STRING_H = 1
  244. const m_HAVE_SYS_STAT_H = 1
  245. const m_HAVE_SYS_TYPES_H = 1
  246. const m_HAVE_UNISTD_H = 1
  247. const m_HostDelete = 1
  248. const m_HostInsert = 0
  249. const m_INT16_MAX = 0x7fff
  250. const m_INT32_MAX = 0x7fffffff
  251. const m_INT64_MAX = 0x7fffffffffffffff
  252. const m_INT8_MAX = 0x7f
  253. const m_INTMAX_MAX = "INT64_MAX"
  254. const m_INTMAX_MIN = "INT64_MIN"
  255. const m_INTPTR_MAX = "INT32_MAX"
  256. const m_INTPTR_MIN = "INT32_MIN"
  257. const m_INT_FAST16_MAX = "INT32_MAX"
  258. const m_INT_FAST16_MIN = "INT32_MIN"
  259. const m_INT_FAST32_MAX = "INT32_MAX"
  260. const m_INT_FAST32_MIN = "INT32_MIN"
  261. const m_INT_FAST64_MAX = "INT64_MAX"
  262. const m_INT_FAST64_MIN = "INT64_MIN"
  263. const m_INT_FAST8_MAX = "INT8_MAX"
  264. const m_INT_FAST8_MIN = "INT8_MIN"
  265. const m_INT_LEAST16_MAX = "INT16_MAX"
  266. const m_INT_LEAST16_MIN = "INT16_MIN"
  267. const m_INT_LEAST32_MAX = "INT32_MAX"
  268. const m_INT_LEAST32_MIN = "INT32_MIN"
  269. const m_INT_LEAST64_MAX = "INT64_MAX"
  270. const m_INT_LEAST64_MIN = "INT64_MIN"
  271. const m_INT_LEAST8_MAX = "INT8_MAX"
  272. const m_INT_LEAST8_MIN = "INT8_MIN"
  273. const m_ITIMER_PROF = 2
  274. const m_ITIMER_REAL = 0
  275. const m_ITIMER_VIRTUAL = 1
  276. const m_IncludeInferiors = 1
  277. const m_InputFocus = 1
  278. const m_InputOnly = 2
  279. const m_InputOutput = 1
  280. const m_IsUnmapped = 0
  281. const m_IsUnviewable = 1
  282. const m_IsViewable = 2
  283. const m_JoinBevel = 2
  284. const m_JoinMiter = 0
  285. const m_JoinRound = 1
  286. const m_KeyPress = 2
  287. const m_KeyRelease = 3
  288. const m_KeymapNotify = 11
  289. const m_LASTEvent = 36
  290. const m_LITTLE_ENDIAN = "__LITTLE_ENDIAN"
  291. const m_LSBFirst = 0
  292. const m_LT_OBJDIR = ".libs/"
  293. const m_L_INCR = 1
  294. const m_L_SET = 0
  295. const m_L_XTND = 2
  296. const m_LastExtensionError = 255
  297. const m_LeaveNotify = 8
  298. const m_LedModeOff = 0
  299. const m_LedModeOn = 1
  300. const m_LineDoubleDash = 2
  301. const m_LineOnOffDash = 1
  302. const m_LineSolid = 0
  303. const m_LockMapIndex = 1
  304. const m_LowerHighest = 1
  305. const m_MAX_HANDLE_SZ = 128
  306. const m_MSBFirst = 1
  307. const m_MapNotify = 19
  308. const m_MapRequest = 20
  309. const m_MappingBusy = 1
  310. const m_MappingFailed = 2
  311. const m_MappingKeyboard = 1
  312. const m_MappingModifier = 0
  313. const m_MappingNotify = 34
  314. const m_MappingPointer = 2
  315. const m_MappingSuccess = 0
  316. const m_Mod1MapIndex = 3
  317. const m_Mod2MapIndex = 4
  318. const m_Mod3MapIndex = 5
  319. const m_Mod4MapIndex = 6
  320. const m_Mod5MapIndex = 7
  321. const m_MotionNotify = 6
  322. const m_NDEBUG = 1
  323. const m_NeedFunctionPrototypes = 1
  324. const m_NeedNestedPrototypes = 1
  325. const m_NeedVarargsPrototypes = 1
  326. const m_NeedWidePrototypes = 0
  327. const m_NoEventMask = 0
  328. const m_NoExpose = 14
  329. const m_NoSymbol = 0
  330. const m_Nonconvex = 1
  331. const m_None = 0
  332. const m_NorthEastGravity = 3
  333. const m_NorthGravity = 2
  334. const m_NorthWestGravity = 1
  335. const m_NotUseful = 0
  336. const m_NotifyAncestor = 0
  337. const m_NotifyDetailNone = 7
  338. const m_NotifyGrab = 1
  339. const m_NotifyHint = 1
  340. const m_NotifyInferior = 2
  341. const m_NotifyNonlinear = 3
  342. const m_NotifyNonlinearVirtual = 4
  343. const m_NotifyNormal = 0
  344. const m_NotifyPointer = 5
  345. const m_NotifyPointerRoot = 6
  346. const m_NotifyUngrab = 2
  347. const m_NotifyVirtual = 1
  348. const m_NotifyWhileGrabbed = 3
  349. const m_O_APPEND = 02000
  350. const m_O_ASYNC = 020000
  351. const m_O_CLOEXEC = 02000000
  352. const m_O_CREAT = 0100
  353. const m_O_DIRECT = 040000
  354. const m_O_DIRECTORY = 0200000
  355. const m_O_DSYNC = 010000
  356. const m_O_EXCL = 0200
  357. const m_O_EXEC = "O_PATH"
  358. const m_O_LARGEFILE = 0100000
  359. const m_O_NDELAY = "O_NONBLOCK"
  360. const m_O_NOATIME = 01000000
  361. const m_O_NOCTTY = 0400
  362. const m_O_NOFOLLOW = 0400000
  363. const m_O_NONBLOCK = 04000
  364. const m_O_PATH = 010000000
  365. const m_O_RDONLY = 00
  366. const m_O_RDWR = 02
  367. const m_O_RSYNC = 04010000
  368. const m_O_SEARCH = "O_PATH"
  369. const m_O_SYNC = 04010000
  370. const m_O_TMPFILE = 020200000
  371. const m_O_TRUNC = 01000
  372. const m_O_TTY_INIT = 0
  373. const m_O_WRONLY = 01
  374. const m_Opposite = 4
  375. const m_PACKAGE = "libXdmcp"
  376. const m_PACKAGE_BUGREPORT = "https://bugs.freedesktop.org/enter_bug.cgi?product=xorg"
  377. const m_PACKAGE_NAME = "libXdmcp"
  378. const m_PACKAGE_STRING = "libXdmcp 1.1.2"
  379. const m_PACKAGE_TARNAME = "libXdmcp"
  380. const m_PACKAGE_URL = ""
  381. const m_PACKAGE_VERSION = "1.1.2"
  382. const m_PACKAGE_VERSION_MAJOR = 1
  383. const m_PACKAGE_VERSION_MINOR = 1
  384. const m_PACKAGE_VERSION_PATCHLEVEL = 2
  385. const m_PDP_ENDIAN = "__PDP_ENDIAN"
  386. const m_POSIX_CLOSE_RESTART = 0
  387. const m_POSIX_FADV_DONTNEED = 4
  388. const m_POSIX_FADV_NOREUSE = 5
  389. const m_POSIX_FADV_NORMAL = 0
  390. const m_POSIX_FADV_RANDOM = 1
  391. const m_POSIX_FADV_SEQUENTIAL = 2
  392. const m_POSIX_FADV_WILLNEED = 3
  393. const m_PTRDIFF_MAX = "INT32_MAX"
  394. const m_PTRDIFF_MIN = "INT32_MIN"
  395. const m_ParentRelative = 1
  396. const m_PlaceOnBottom = 1
  397. const m_PlaceOnTop = 0
  398. const m_PointerRoot = 1
  399. const m_PointerWindow = 0
  400. const m_PreferBlanking = 1
  401. const m_PropModeAppend = 2
  402. const m_PropModePrepend = 1
  403. const m_PropModeReplace = 0
  404. const m_PropertyDelete = 1
  405. const m_PropertyNewValue = 0
  406. const m_PropertyNotify = 28
  407. const m_PseudoColor = 3
  408. const m_RAND_MAX = 0x7fffffff
  409. const m_RWF_WRITE_LIFE_NOT_SET = 0
  410. const m_RWH_WRITE_LIFE_EXTREME = 5
  411. const m_RWH_WRITE_LIFE_LONG = 4
  412. const m_RWH_WRITE_LIFE_MEDIUM = 3
  413. const m_RWH_WRITE_LIFE_NONE = 1
  414. const m_RWH_WRITE_LIFE_SHORT = 2
  415. const m_R_OK = 4
  416. const m_RaiseLowest = 0
  417. const m_ReparentNotify = 21
  418. const m_ReplayKeyboard = 5
  419. const m_ReplayPointer = 2
  420. const m_ResizeRequest = 25
  421. const m_RetainPermanent = 1
  422. const m_RetainTemporary = 2
  423. const m_RevertToParent = 2
  424. const m_SEEK_DATA = 3
  425. const m_SEEK_HOLE = 4
  426. const m_SIG_ATOMIC_MAX = "INT32_MAX"
  427. const m_SIG_ATOMIC_MIN = "INT32_MIN"
  428. const m_SIZE_MAX = "UINT32_MAX"
  429. const m_SPLICE_F_GIFT = 8
  430. const m_SPLICE_F_MORE = 4
  431. const m_SPLICE_F_MOVE = 1
  432. const m_SPLICE_F_NONBLOCK = 2
  433. const m_STDC_HEADERS = 1
  434. const m_STDERR_FILENO = 2
  435. const m_STDIN_FILENO = 0
  436. const m_STDOUT_FILENO = 1
  437. const m_SYNC_FILE_RANGE_WAIT_AFTER = 4
  438. const m_SYNC_FILE_RANGE_WAIT_BEFORE = 1
  439. const m_SYNC_FILE_RANGE_WRITE = 2
  440. const m_S_IRGRP = 0040
  441. const m_S_IROTH = 0004
  442. const m_S_IRUSR = 0400
  443. const m_S_IRWXG = 0070
  444. const m_S_IRWXO = 0007
  445. const m_S_IRWXU = 0700
  446. const m_S_ISGID = 02000
  447. const m_S_ISUID = 04000
  448. const m_S_ISVTX = 01000
  449. const m_S_IWGRP = 0020
  450. const m_S_IWOTH = 0002
  451. const m_S_IWUSR = 0200
  452. const m_S_IXGRP = 0010
  453. const m_S_IXOTH = 0001
  454. const m_S_IXUSR = 0100
  455. const m_ScreenSaverActive = 1
  456. const m_ScreenSaverReset = 0
  457. const m_SelectionClear = 29
  458. const m_SelectionNotify = 31
  459. const m_SelectionRequest = 30
  460. const m_SetModeDelete = 1
  461. const m_SetModeInsert = 0
  462. const m_ShiftMapIndex = 0
  463. const m_SouthEastGravity = 9
  464. const m_SouthGravity = 8
  465. const m_SouthWestGravity = 7
  466. const m_StaticColor = 2
  467. const m_StaticGravity = 10
  468. const m_StaticGray = 0
  469. const m_StippleShape = 2
  470. const m_Success = 0
  471. const m_SyncBoth = 7
  472. const m_SyncKeyboard = 4
  473. const m_SyncPointer = 1
  474. const m_TIMER_ABSTIME = 1
  475. const m_TIME_UTC = 1
  476. const m_TRUE = 1
  477. const m_TileShape = 1
  478. const m_TopIf = 2
  479. const m_TrueColor = 4
  480. const m_UINT16_MAX = 65535
  481. const m_UINT32_MAX = "0xffffffffu"
  482. const m_UINT64_MAX = "0xffffffffffffffffu"
  483. const m_UINT8_MAX = 255
  484. const m_UINTMAX_MAX = "UINT64_MAX"
  485. const m_UINTPTR_MAX = "UINT32_MAX"
  486. const m_UINT_FAST16_MAX = "UINT32_MAX"
  487. const m_UINT_FAST32_MAX = "UINT32_MAX"
  488. const m_UINT_FAST64_MAX = "UINT64_MAX"
  489. const m_UINT_FAST8_MAX = "UINT8_MAX"
  490. const m_UINT_LEAST16_MAX = "UINT16_MAX"
  491. const m_UINT_LEAST32_MAX = "UINT32_MAX"
  492. const m_UINT_LEAST64_MAX = "UINT64_MAX"
  493. const m_UINT_LEAST8_MAX = "UINT8_MAX"
  494. const m_UnmapGravity = 0
  495. const m_UnmapNotify = 18
  496. const m_Unsorted = 0
  497. const m_VERSION = "1.1.2"
  498. const m_VisibilityFullyObscured = 2
  499. const m_VisibilityNotify = 15
  500. const m_VisibilityPartiallyObscured = 1
  501. const m_VisibilityUnobscured = 0
  502. const m_WINT_MAX = "UINT32_MAX"
  503. const m_WINT_MIN = 0
  504. const m_WNOHANG = 1
  505. const m_WUNTRACED = 2
  506. const m_W_OK = 2
  507. const m_WestGravity = 4
  508. const m_WhenMapped = 1
  509. const m_WindingRule = 1
  510. const m_XDM_DEFAULT_MCAST_ADDR6 = "ff02:0:0:0:0:0:0:12b"
  511. const m_XDM_KA_RTX_LIMIT = 4
  512. const m_XDM_MAX_MSGLEN = 8192
  513. const m_XDM_MAX_RTX = 32
  514. const m_XDM_MIN_RTX = 2
  515. const m_XDM_PROTOCOL_VERSION = 1
  516. const m_XDM_RTX_LIMIT = 7
  517. const m_XDM_UDP_PORT = 177
  518. const m_XMD_H = 1
  519. const m_XYBitmap = 0
  520. const m_XYPixmap = 1
  521. const m_X_BIG_ENDIAN = "BIG_ENDIAN"
  522. const m_X_BYTE_ORDER = "BYTE_ORDER"
  523. const m_X_LITTLE_ENDIAN = "LITTLE_ENDIAN"
  524. const m_X_OK = 1
  525. const m_X_PROTOCOL = 11
  526. const m_X_PROTOCOL_REVISION = 0
  527. const m_YSorted = 1
  528. const m_YXBanded = 3
  529. const m_YXSorted = 2
  530. const m_ZPixmap = 2
  531. const m__ALL_SOURCE = 1
  532. const m__CS_GNU_LIBC_VERSION = 2
  533. const m__CS_GNU_LIBPTHREAD_VERSION = 3
  534. const m__CS_PATH = 0
  535. const m__CS_POSIX_V5_WIDTH_RESTRICTED_ENVS = 4
  536. const m__CS_POSIX_V6_ILP32_OFF32_CFLAGS = 1116
  537. const m__CS_POSIX_V6_ILP32_OFF32_LDFLAGS = 1117
  538. const m__CS_POSIX_V6_ILP32_OFF32_LIBS = 1118
  539. const m__CS_POSIX_V6_ILP32_OFF32_LINTFLAGS = 1119
  540. const m__CS_POSIX_V6_ILP32_OFFBIG_CFLAGS = 1120
  541. const m__CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS = 1121
  542. const m__CS_POSIX_V6_ILP32_OFFBIG_LIBS = 1122
  543. const m__CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS = 1123
  544. const m__CS_POSIX_V6_LP64_OFF64_CFLAGS = 1124
  545. const m__CS_POSIX_V6_LP64_OFF64_LDFLAGS = 1125
  546. const m__CS_POSIX_V6_LP64_OFF64_LIBS = 1126
  547. const m__CS_POSIX_V6_LP64_OFF64_LINTFLAGS = 1127
  548. const m__CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS = 1128
  549. const m__CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS = 1129
  550. const m__CS_POSIX_V6_LPBIG_OFFBIG_LIBS = 1130
  551. const m__CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS = 1131
  552. const m__CS_POSIX_V6_WIDTH_RESTRICTED_ENVS = 1
  553. const m__CS_POSIX_V7_ILP32_OFF32_CFLAGS = 1132
  554. const m__CS_POSIX_V7_ILP32_OFF32_LDFLAGS = 1133
  555. const m__CS_POSIX_V7_ILP32_OFF32_LIBS = 1134
  556. const m__CS_POSIX_V7_ILP32_OFF32_LINTFLAGS = 1135
  557. const m__CS_POSIX_V7_ILP32_OFFBIG_CFLAGS = 1136
  558. const m__CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS = 1137
  559. const m__CS_POSIX_V7_ILP32_OFFBIG_LIBS = 1138
  560. const m__CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS = 1139
  561. const m__CS_POSIX_V7_LP64_OFF64_CFLAGS = 1140
  562. const m__CS_POSIX_V7_LP64_OFF64_LDFLAGS = 1141
  563. const m__CS_POSIX_V7_LP64_OFF64_LIBS = 1142
  564. const m__CS_POSIX_V7_LP64_OFF64_LINTFLAGS = 1143
  565. const m__CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS = 1144
  566. const m__CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS = 1145
  567. const m__CS_POSIX_V7_LPBIG_OFFBIG_LIBS = 1146
  568. const m__CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS = 1147
  569. const m__CS_POSIX_V7_THREADS_CFLAGS = 1150
  570. const m__CS_POSIX_V7_THREADS_LDFLAGS = 1151
  571. const m__CS_POSIX_V7_WIDTH_RESTRICTED_ENVS = 5
  572. const m__CS_V6_ENV = 1148
  573. const m__CS_V7_ENV = 1149
  574. const m__FILE_OFFSET_BITS = 64
  575. const m__GNU_SOURCE = 1
  576. const m__ILP32 = 1
  577. const m__PC_2_SYMLINKS = 20
  578. const m__PC_ALLOC_SIZE_MIN = 18
  579. const m__PC_ASYNC_IO = 10
  580. const m__PC_CHOWN_RESTRICTED = 6
  581. const m__PC_FILESIZEBITS = 13
  582. const m__PC_LINK_MAX = 0
  583. const m__PC_MAX_CANON = 1
  584. const m__PC_MAX_INPUT = 2
  585. const m__PC_NAME_MAX = 3
  586. const m__PC_NO_TRUNC = 7
  587. const m__PC_PATH_MAX = 4
  588. const m__PC_PIPE_BUF = 5
  589. const m__PC_PRIO_IO = 11
  590. const m__PC_REC_INCR_XFER_SIZE = 14
  591. const m__PC_REC_MAX_XFER_SIZE = 15
  592. const m__PC_REC_MIN_XFER_SIZE = 16
  593. const m__PC_REC_XFER_ALIGN = 17
  594. const m__PC_SOCK_MAXBUF = 12
  595. const m__PC_SYMLINK_MAX = 19
  596. const m__PC_SYNC_IO = 9
  597. const m__PC_VDISABLE = 8
  598. const m__POSIX2_C_BIND = "_POSIX_VERSION"
  599. const m__POSIX2_VERSION = "_POSIX_VERSION"
  600. const m__POSIX_ADVISORY_INFO = "_POSIX_VERSION"
  601. const m__POSIX_ASYNCHRONOUS_IO = "_POSIX_VERSION"
  602. const m__POSIX_BARRIERS = "_POSIX_VERSION"
  603. const m__POSIX_CHOWN_RESTRICTED = 1
  604. const m__POSIX_CLOCK_SELECTION = "_POSIX_VERSION"
  605. const m__POSIX_CPUTIME = "_POSIX_VERSION"
  606. const m__POSIX_FSYNC = "_POSIX_VERSION"
  607. const m__POSIX_IPV6 = "_POSIX_VERSION"
  608. const m__POSIX_JOB_CONTROL = 1
  609. const m__POSIX_MAPPED_FILES = "_POSIX_VERSION"
  610. const m__POSIX_MEMLOCK = "_POSIX_VERSION"
  611. const m__POSIX_MEMLOCK_RANGE = "_POSIX_VERSION"
  612. const m__POSIX_MEMORY_PROTECTION = "_POSIX_VERSION"
  613. const m__POSIX_MESSAGE_PASSING = "_POSIX_VERSION"
  614. const m__POSIX_MONOTONIC_CLOCK = "_POSIX_VERSION"
  615. const m__POSIX_NO_TRUNC = 1
  616. const m__POSIX_PTHREAD_SEMANTICS = 1
  617. const m__POSIX_RAW_SOCKETS = "_POSIX_VERSION"
  618. const m__POSIX_READER_WRITER_LOCKS = "_POSIX_VERSION"
  619. const m__POSIX_REALTIME_SIGNALS = "_POSIX_VERSION"
  620. const m__POSIX_REGEXP = 1
  621. const m__POSIX_SAVED_IDS = 1
  622. const m__POSIX_SEMAPHORES = "_POSIX_VERSION"
  623. const m__POSIX_SHARED_MEMORY_OBJECTS = "_POSIX_VERSION"
  624. const m__POSIX_SHELL = 1
  625. const m__POSIX_SPAWN = "_POSIX_VERSION"
  626. const m__POSIX_SPIN_LOCKS = "_POSIX_VERSION"
  627. const m__POSIX_THREADS = "_POSIX_VERSION"
  628. const m__POSIX_THREAD_ATTR_STACKADDR = "_POSIX_VERSION"
  629. const m__POSIX_THREAD_ATTR_STACKSIZE = "_POSIX_VERSION"
  630. const m__POSIX_THREAD_CPUTIME = "_POSIX_VERSION"
  631. const m__POSIX_THREAD_PRIORITY_SCHEDULING = "_POSIX_VERSION"
  632. const m__POSIX_THREAD_PROCESS_SHARED = "_POSIX_VERSION"
  633. const m__POSIX_THREAD_SAFE_FUNCTIONS = "_POSIX_VERSION"
  634. const m__POSIX_TIMEOUTS = "_POSIX_VERSION"
  635. const m__POSIX_TIMERS = "_POSIX_VERSION"
  636. const m__POSIX_V6_ILP32_OFFBIG = 1
  637. const m__POSIX_V7_ILP32_OFFBIG = 1
  638. const m__POSIX_VDISABLE = 0
  639. const m__POSIX_VERSION = 200809
  640. const m__REDIR_TIME64 = 1
  641. const m__SC_2_CHAR_TERM = 95
  642. const m__SC_2_C_BIND = 47
  643. const m__SC_2_C_DEV = 48
  644. const m__SC_2_FORT_DEV = 49
  645. const m__SC_2_FORT_RUN = 50
  646. const m__SC_2_LOCALEDEF = 52
  647. const m__SC_2_PBS = 168
  648. const m__SC_2_PBS_ACCOUNTING = 169
  649. const m__SC_2_PBS_CHECKPOINT = 175
  650. const m__SC_2_PBS_LOCATE = 170
  651. const m__SC_2_PBS_MESSAGE = 171
  652. const m__SC_2_PBS_TRACK = 172
  653. const m__SC_2_SW_DEV = 51
  654. const m__SC_2_UPE = 97
  655. const m__SC_2_VERSION = 46
  656. const m__SC_ADVISORY_INFO = 132
  657. const m__SC_AIO_LISTIO_MAX = 23
  658. const m__SC_AIO_MAX = 24
  659. const m__SC_AIO_PRIO_DELTA_MAX = 25
  660. const m__SC_ARG_MAX = 0
  661. const m__SC_ASYNCHRONOUS_IO = 12
  662. const m__SC_ATEXIT_MAX = 87
  663. const m__SC_AVPHYS_PAGES = 86
  664. const m__SC_BARRIERS = 133
  665. const m__SC_BC_BASE_MAX = 36
  666. const m__SC_BC_DIM_MAX = 37
  667. const m__SC_BC_SCALE_MAX = 38
  668. const m__SC_BC_STRING_MAX = 39
  669. const m__SC_CHILD_MAX = 1
  670. const m__SC_CLK_TCK = 2
  671. const m__SC_CLOCK_SELECTION = 137
  672. const m__SC_COLL_WEIGHTS_MAX = 40
  673. const m__SC_CPUTIME = 138
  674. const m__SC_DELAYTIMER_MAX = 26
  675. const m__SC_EXPR_NEST_MAX = 42
  676. const m__SC_FSYNC = 15
  677. const m__SC_GETGR_R_SIZE_MAX = 69
  678. const m__SC_GETPW_R_SIZE_MAX = 70
  679. const m__SC_HOST_NAME_MAX = 180
  680. const m__SC_IOV_MAX = 60
  681. const m__SC_IPV6 = 235
  682. const m__SC_JOB_CONTROL = 7
  683. const m__SC_LINE_MAX = 43
  684. const m__SC_LOGIN_NAME_MAX = 71
  685. const m__SC_MAPPED_FILES = 16
  686. const m__SC_MEMLOCK = 17
  687. const m__SC_MEMLOCK_RANGE = 18
  688. const m__SC_MEMORY_PROTECTION = 19
  689. const m__SC_MESSAGE_PASSING = 20
  690. const m__SC_MINSIGSTKSZ = 249
  691. const m__SC_MONOTONIC_CLOCK = 149
  692. const m__SC_MQ_OPEN_MAX = 27
  693. const m__SC_MQ_PRIO_MAX = 28
  694. const m__SC_NGROUPS_MAX = 3
  695. const m__SC_NPROCESSORS_CONF = 83
  696. const m__SC_NPROCESSORS_ONLN = 84
  697. const m__SC_NZERO = 109
  698. const m__SC_OPEN_MAX = 4
  699. const m__SC_PAGESIZE = 30
  700. const m__SC_PAGE_SIZE = 30
  701. const m__SC_PASS_MAX = 88
  702. const m__SC_PHYS_PAGES = 85
  703. const m__SC_PRIORITIZED_IO = 13
  704. const m__SC_PRIORITY_SCHEDULING = 10
  705. const m__SC_RAW_SOCKETS = 236
  706. const m__SC_READER_WRITER_LOCKS = 153
  707. const m__SC_REALTIME_SIGNALS = 9
  708. const m__SC_REGEXP = 155
  709. const m__SC_RE_DUP_MAX = 44
  710. const m__SC_RTSIG_MAX = 31
  711. const m__SC_SAVED_IDS = 8
  712. const m__SC_SEMAPHORES = 21
  713. const m__SC_SEM_NSEMS_MAX = 32
  714. const m__SC_SEM_VALUE_MAX = 33
  715. const m__SC_SHARED_MEMORY_OBJECTS = 22
  716. const m__SC_SHELL = 157
  717. const m__SC_SIGQUEUE_MAX = 34
  718. const m__SC_SIGSTKSZ = 250
  719. const m__SC_SPAWN = 159
  720. const m__SC_SPIN_LOCKS = 154
  721. const m__SC_SPORADIC_SERVER = 160
  722. const m__SC_SS_REPL_MAX = 241
  723. const m__SC_STREAMS = 174
  724. const m__SC_STREAM_MAX = 5
  725. const m__SC_SYMLOOP_MAX = 173
  726. const m__SC_SYNCHRONIZED_IO = 14
  727. const m__SC_THREADS = 67
  728. const m__SC_THREAD_ATTR_STACKADDR = 77
  729. const m__SC_THREAD_ATTR_STACKSIZE = 78
  730. const m__SC_THREAD_CPUTIME = 139
  731. const m__SC_THREAD_DESTRUCTOR_ITERATIONS = 73
  732. const m__SC_THREAD_KEYS_MAX = 74
  733. const m__SC_THREAD_PRIORITY_SCHEDULING = 79
  734. const m__SC_THREAD_PRIO_INHERIT = 80
  735. const m__SC_THREAD_PRIO_PROTECT = 81
  736. const m__SC_THREAD_PROCESS_SHARED = 82
  737. const m__SC_THREAD_ROBUST_PRIO_INHERIT = 247
  738. const m__SC_THREAD_ROBUST_PRIO_PROTECT = 248
  739. const m__SC_THREAD_SAFE_FUNCTIONS = 68
  740. const m__SC_THREAD_SPORADIC_SERVER = 161
  741. const m__SC_THREAD_STACK_MIN = 75
  742. const m__SC_THREAD_THREADS_MAX = 76
  743. const m__SC_TIMEOUTS = 164
  744. const m__SC_TIMERS = 11
  745. const m__SC_TIMER_MAX = 35
  746. const m__SC_TRACE = 181
  747. const m__SC_TRACE_EVENT_FILTER = 182
  748. const m__SC_TRACE_EVENT_NAME_MAX = 242
  749. const m__SC_TRACE_INHERIT = 183
  750. const m__SC_TRACE_LOG = 184
  751. const m__SC_TRACE_NAME_MAX = 243
  752. const m__SC_TRACE_SYS_MAX = 244
  753. const m__SC_TRACE_USER_EVENT_MAX = 245
  754. const m__SC_TTY_NAME_MAX = 72
  755. const m__SC_TYPED_MEMORY_OBJECTS = 165
  756. const m__SC_TZNAME_MAX = 6
  757. const m__SC_UIO_MAXIOV = 60
  758. const m__SC_V6_ILP32_OFF32 = 176
  759. const m__SC_V6_ILP32_OFFBIG = 177
  760. const m__SC_V6_LP64_OFF64 = 178
  761. const m__SC_V6_LPBIG_OFFBIG = 179
  762. const m__SC_V7_ILP32_OFF32 = 237
  763. const m__SC_V7_ILP32_OFFBIG = 238
  764. const m__SC_V7_LP64_OFF64 = 239
  765. const m__SC_V7_LPBIG_OFFBIG = 240
  766. const m__SC_VERSION = 29
  767. const m__SC_XBS5_ILP32_OFF32 = 125
  768. const m__SC_XBS5_ILP32_OFFBIG = 126
  769. const m__SC_XBS5_LP64_OFF64 = 127
  770. const m__SC_XBS5_LPBIG_OFFBIG = 128
  771. const m__SC_XOPEN_CRYPT = 92
  772. const m__SC_XOPEN_ENH_I18N = 93
  773. const m__SC_XOPEN_LEGACY = 129
  774. const m__SC_XOPEN_REALTIME = 130
  775. const m__SC_XOPEN_REALTIME_THREADS = 131
  776. const m__SC_XOPEN_SHM = 94
  777. const m__SC_XOPEN_STREAMS = 246
  778. const m__SC_XOPEN_UNIX = 91
  779. const m__SC_XOPEN_VERSION = 89
  780. const m__SC_XOPEN_XCU_VERSION = 90
  781. const m__SC_XOPEN_XPG2 = 98
  782. const m__SC_XOPEN_XPG3 = 99
  783. const m__SC_XOPEN_XPG4 = 100
  784. const m__STDC_PREDEF_H = 1
  785. const m__TANDEM_SOURCE = 1
  786. const m__XOPEN_ENH_I18N = 1
  787. const m__XOPEN_UNIX = 1
  788. const m__XOPEN_VERSION = 700
  789. const m__X_INLINE = "inline"
  790. const m__X_RESTRICT_KYWD = "restrict"
  791. const m__Xconst = "const"
  792. const m___ATOMIC_ACQUIRE = 2
  793. const m___ATOMIC_ACQ_REL = 4
  794. const m___ATOMIC_CONSUME = 1
  795. const m___ATOMIC_HLE_ACQUIRE = 65536
  796. const m___ATOMIC_HLE_RELEASE = 131072
  797. const m___ATOMIC_RELAXED = 0
  798. const m___ATOMIC_RELEASE = 3
  799. const m___ATOMIC_SEQ_CST = 5
  800. const m___BIGGEST_ALIGNMENT__ = 16
  801. const m___BIG_ENDIAN = 4321
  802. const m___BYTE_ORDER = 1234
  803. const m___BYTE_ORDER__ = "__ORDER_LITTLE_ENDIAN__"
  804. const m___CCGO__ = 1
  805. const m___CHAR_BIT__ = 8
  806. const m___DBL_DECIMAL_DIG__ = 17
  807. const m___DBL_DIG__ = 15
  808. const m___DBL_HAS_DENORM__ = 1
  809. const m___DBL_HAS_INFINITY__ = 1
  810. const m___DBL_HAS_QUIET_NAN__ = 1
  811. const m___DBL_IS_IEC_60559__ = 2
  812. const m___DBL_MANT_DIG__ = 53
  813. const m___DBL_MAX_10_EXP__ = 308
  814. const m___DBL_MAX_EXP__ = 1024
  815. const m___DEC128_EPSILON__ = 1e-33
  816. const m___DEC128_MANT_DIG__ = 34
  817. const m___DEC128_MAX_EXP__ = 6145
  818. const m___DEC128_MAX__ = "9.999999999999999999999999999999999E6144"
  819. const m___DEC128_MIN__ = 1e-6143
  820. const m___DEC128_SUBNORMAL_MIN__ = 0.000000000000000000000000000000001e-6143
  821. const m___DEC32_EPSILON__ = 1e-6
  822. const m___DEC32_MANT_DIG__ = 7
  823. const m___DEC32_MAX_EXP__ = 97
  824. const m___DEC32_MAX__ = 9.999999e96
  825. const m___DEC32_MIN__ = 1e-95
  826. const m___DEC32_SUBNORMAL_MIN__ = 0.000001e-95
  827. const m___DEC64_EPSILON__ = 1e-15
  828. const m___DEC64_MANT_DIG__ = 16
  829. const m___DEC64_MAX_EXP__ = 385
  830. const m___DEC64_MAX__ = "9.999999999999999E384"
  831. const m___DEC64_MIN__ = 1e-383
  832. const m___DEC64_SUBNORMAL_MIN__ = 0.000000000000001e-383
  833. const m___DECIMAL_BID_FORMAT__ = 1
  834. const m___DECIMAL_DIG__ = 17
  835. const m___DEC_EVAL_METHOD__ = 2
  836. const m___ELF__ = 1
  837. const m___EXTENSIONS__ = 1
  838. const m___FINITE_MATH_ONLY__ = 0
  839. const m___FLOAT_WORD_ORDER__ = "__ORDER_LITTLE_ENDIAN__"
  840. const m___FLT128_DECIMAL_DIG__ = 36
  841. const m___FLT128_DENORM_MIN__ = 6.47517511943802511092443895822764655e-4966
  842. const m___FLT128_DIG__ = 33
  843. const m___FLT128_EPSILON__ = 1.92592994438723585305597794258492732e-34
  844. const m___FLT128_HAS_DENORM__ = 1
  845. const m___FLT128_HAS_INFINITY__ = 1
  846. const m___FLT128_HAS_QUIET_NAN__ = 1
  847. const m___FLT128_IS_IEC_60559__ = 2
  848. const m___FLT128_MANT_DIG__ = 113
  849. const m___FLT128_MAX_10_EXP__ = 4932
  850. const m___FLT128_MAX_EXP__ = 16384
  851. const m___FLT128_MAX__ = "1.18973149535723176508575932662800702e+4932"
  852. const m___FLT128_MIN__ = 3.36210314311209350626267781732175260e-4932
  853. const m___FLT128_NORM_MAX__ = "1.18973149535723176508575932662800702e+4932"
  854. const m___FLT32X_DECIMAL_DIG__ = 17
  855. const m___FLT32X_DENORM_MIN__ = 4.94065645841246544176568792868221372e-324
  856. const m___FLT32X_DIG__ = 15
  857. const m___FLT32X_EPSILON__ = 2.22044604925031308084726333618164062e-16
  858. const m___FLT32X_HAS_DENORM__ = 1
  859. const m___FLT32X_HAS_INFINITY__ = 1
  860. const m___FLT32X_HAS_QUIET_NAN__ = 1
  861. const m___FLT32X_IS_IEC_60559__ = 2
  862. const m___FLT32X_MANT_DIG__ = 53
  863. const m___FLT32X_MAX_10_EXP__ = 308
  864. const m___FLT32X_MAX_EXP__ = 1024
  865. const m___FLT32X_MAX__ = 1.79769313486231570814527423731704357e+308
  866. const m___FLT32X_MIN__ = 2.22507385850720138309023271733240406e-308
  867. const m___FLT32X_NORM_MAX__ = 1.79769313486231570814527423731704357e+308
  868. const m___FLT32_DECIMAL_DIG__ = 9
  869. const m___FLT32_DENORM_MIN__ = 1.40129846432481707092372958328991613e-45
  870. const m___FLT32_DIG__ = 6
  871. const m___FLT32_EPSILON__ = 1.19209289550781250000000000000000000e-7
  872. const m___FLT32_HAS_DENORM__ = 1
  873. const m___FLT32_HAS_INFINITY__ = 1
  874. const m___FLT32_HAS_QUIET_NAN__ = 1
  875. const m___FLT32_IS_IEC_60559__ = 2
  876. const m___FLT32_MANT_DIG__ = 24
  877. const m___FLT32_MAX_10_EXP__ = 38
  878. const m___FLT32_MAX_EXP__ = 128
  879. const m___FLT32_MAX__ = 3.40282346638528859811704183484516925e+38
  880. const m___FLT32_MIN__ = 1.17549435082228750796873653722224568e-38
  881. const m___FLT32_NORM_MAX__ = 3.40282346638528859811704183484516925e+38
  882. const m___FLT64X_DECIMAL_DIG__ = 36
  883. const m___FLT64X_DENORM_MIN__ = 6.47517511943802511092443895822764655e-4966
  884. const m___FLT64X_DIG__ = 33
  885. const m___FLT64X_EPSILON__ = 1.92592994438723585305597794258492732e-34
  886. const m___FLT64X_HAS_DENORM__ = 1
  887. const m___FLT64X_HAS_INFINITY__ = 1
  888. const m___FLT64X_HAS_QUIET_NAN__ = 1
  889. const m___FLT64X_IS_IEC_60559__ = 2
  890. const m___FLT64X_MANT_DIG__ = 113
  891. const m___FLT64X_MAX_10_EXP__ = 4932
  892. const m___FLT64X_MAX_EXP__ = 16384
  893. const m___FLT64X_MAX__ = "1.18973149535723176508575932662800702e+4932"
  894. const m___FLT64X_MIN__ = 3.36210314311209350626267781732175260e-4932
  895. const m___FLT64X_NORM_MAX__ = "1.18973149535723176508575932662800702e+4932"
  896. const m___FLT64_DECIMAL_DIG__ = 17
  897. const m___FLT64_DENORM_MIN__ = 4.94065645841246544176568792868221372e-324
  898. const m___FLT64_DIG__ = 15
  899. const m___FLT64_EPSILON__ = 2.22044604925031308084726333618164062e-16
  900. const m___FLT64_HAS_DENORM__ = 1
  901. const m___FLT64_HAS_INFINITY__ = 1
  902. const m___FLT64_HAS_QUIET_NAN__ = 1
  903. const m___FLT64_IS_IEC_60559__ = 2
  904. const m___FLT64_MANT_DIG__ = 53
  905. const m___FLT64_MAX_10_EXP__ = 308
  906. const m___FLT64_MAX_EXP__ = 1024
  907. const m___FLT64_MAX__ = 1.79769313486231570814527423731704357e+308
  908. const m___FLT64_MIN__ = 2.22507385850720138309023271733240406e-308
  909. const m___FLT64_NORM_MAX__ = 1.79769313486231570814527423731704357e+308
  910. const m___FLT_DECIMAL_DIG__ = 9
  911. const m___FLT_DENORM_MIN__ = 1.40129846432481707092372958328991613e-45
  912. const m___FLT_DIG__ = 6
  913. const m___FLT_EPSILON__ = 1.19209289550781250000000000000000000e-7
  914. const m___FLT_EVAL_METHOD_TS_18661_3__ = 2
  915. const m___FLT_EVAL_METHOD__ = 2
  916. const m___FLT_HAS_DENORM__ = 1
  917. const m___FLT_HAS_INFINITY__ = 1
  918. const m___FLT_HAS_QUIET_NAN__ = 1
  919. const m___FLT_IS_IEC_60559__ = 2
  920. const m___FLT_MANT_DIG__ = 24
  921. const m___FLT_MAX_10_EXP__ = 38
  922. const m___FLT_MAX_EXP__ = 128
  923. const m___FLT_MAX__ = 3.40282346638528859811704183484516925e+38
  924. const m___FLT_MIN__ = 1.17549435082228750796873653722224568e-38
  925. const m___FLT_NORM_MAX__ = 3.40282346638528859811704183484516925e+38
  926. const m___FLT_RADIX__ = 2
  927. const m___FUNCTION__ = "__func__"
  928. const m___GCC_ASM_FLAG_OUTPUTS__ = 1
  929. const m___GCC_ATOMIC_BOOL_LOCK_FREE = 2
  930. const m___GCC_ATOMIC_CHAR16_T_LOCK_FREE = 2
  931. const m___GCC_ATOMIC_CHAR32_T_LOCK_FREE = 2
  932. const m___GCC_ATOMIC_CHAR_LOCK_FREE = 2
  933. const m___GCC_ATOMIC_INT_LOCK_FREE = 2
  934. const m___GCC_ATOMIC_LLONG_LOCK_FREE = 2
  935. const m___GCC_ATOMIC_LONG_LOCK_FREE = 2
  936. const m___GCC_ATOMIC_POINTER_LOCK_FREE = 2
  937. const m___GCC_ATOMIC_SHORT_LOCK_FREE = 2
  938. const m___GCC_ATOMIC_TEST_AND_SET_TRUEVAL = 1
  939. const m___GCC_ATOMIC_WCHAR_T_LOCK_FREE = 2
  940. const m___GCC_CONSTRUCTIVE_SIZE = 64
  941. const m___GCC_DESTRUCTIVE_SIZE = 64
  942. const m___GCC_HAVE_DWARF2_CFI_ASM = 1
  943. const m___GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 = 1
  944. const m___GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 = 1
  945. const m___GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 = 1
  946. const m___GCC_HAVE_SYNC_COMPARE_AND_SWAP_8 = 1
  947. const m___GCC_IEC_559 = 2
  948. const m___GCC_IEC_559_COMPLEX = 2
  949. const m___GNUC_EXECUTION_CHARSET_NAME = "UTF-8"
  950. const m___GNUC_MINOR__ = 2
  951. const m___GNUC_PATCHLEVEL__ = 0
  952. const m___GNUC_STDC_INLINE__ = 1
  953. const m___GNUC_WIDE_EXECUTION_CHARSET_NAME = "UTF-32LE"
  954. const m___GNUC__ = 12
  955. const m___GXX_ABI_VERSION = 1017
  956. const m___HAVE_SPECULATION_SAFE_VALUE = 1
  957. const m___ILP32__ = 1
  958. const m___INT16_MAX__ = 0x7fff
  959. const m___INT32_MAX__ = 0x7fffffff
  960. const m___INT32_TYPE__ = "int"
  961. const m___INT64_MAX__ = 0x7fffffffffffffff
  962. const m___INT8_MAX__ = 0x7f
  963. const m___INTMAX_MAX__ = 0x7fffffffffffffff
  964. const m___INTMAX_WIDTH__ = 64
  965. const m___INTPTR_MAX__ = 0x7fffffff
  966. const m___INTPTR_TYPE__ = "int"
  967. const m___INTPTR_WIDTH__ = 32
  968. const m___INT_FAST16_MAX__ = 0x7fffffff
  969. const m___INT_FAST16_TYPE__ = "int"
  970. const m___INT_FAST16_WIDTH__ = 32
  971. const m___INT_FAST32_MAX__ = 0x7fffffff
  972. const m___INT_FAST32_TYPE__ = "int"
  973. const m___INT_FAST32_WIDTH__ = 32
  974. const m___INT_FAST64_MAX__ = 0x7fffffffffffffff
  975. const m___INT_FAST64_WIDTH__ = 64
  976. const m___INT_FAST8_MAX__ = 0x7f
  977. const m___INT_FAST8_WIDTH__ = 8
  978. const m___INT_LEAST16_MAX__ = 0x7fff
  979. const m___INT_LEAST16_WIDTH__ = 16
  980. const m___INT_LEAST32_MAX__ = 0x7fffffff
  981. const m___INT_LEAST32_TYPE__ = "int"
  982. const m___INT_LEAST32_WIDTH__ = 32
  983. const m___INT_LEAST64_MAX__ = 0x7fffffffffffffff
  984. const m___INT_LEAST64_WIDTH__ = 64
  985. const m___INT_LEAST8_MAX__ = 0x7f
  986. const m___INT_LEAST8_WIDTH__ = 8
  987. const m___INT_MAX__ = 0x7fffffff
  988. const m___INT_WIDTH__ = 32
  989. const m___LAHF_SAHF__ = 1
  990. const m___LDBL_DECIMAL_DIG__ = 17
  991. const m___LDBL_DENORM_MIN__ = 4.94065645841246544176568792868221372e-324
  992. const m___LDBL_DIG__ = 15
  993. const m___LDBL_EPSILON__ = 2.22044604925031308084726333618164062e-16
  994. const m___LDBL_HAS_DENORM__ = 1
  995. const m___LDBL_HAS_INFINITY__ = 1
  996. const m___LDBL_HAS_QUIET_NAN__ = 1
  997. const m___LDBL_IS_IEC_60559__ = 2
  998. const m___LDBL_MANT_DIG__ = 53
  999. const m___LDBL_MAX_10_EXP__ = 308
  1000. const m___LDBL_MAX_EXP__ = 1024
  1001. const m___LDBL_MAX__ = 1.79769313486231570814527423731704357e+308
  1002. const m___LDBL_MIN__ = 2.22507385850720138309023271733240406e-308
  1003. const m___LDBL_NORM_MAX__ = 1.79769313486231570814527423731704357e+308
  1004. const m___LITTLE_ENDIAN = 1234
  1005. const m___LONG_DOUBLE_64__ = 1
  1006. const m___LONG_LONG_MAX__ = 0x7fffffffffffffff
  1007. const m___LONG_LONG_WIDTH__ = 64
  1008. const m___LONG_MAX = 0x7fffffff
  1009. const m___LONG_MAX__ = 0x7fffffff
  1010. const m___LONG_WIDTH__ = 32
  1011. const m___NO_INLINE__ = 1
  1012. const m___ORDER_BIG_ENDIAN__ = 4321
  1013. const m___ORDER_LITTLE_ENDIAN__ = 1234
  1014. const m___ORDER_PDP_ENDIAN__ = 3412
  1015. const m___PDP_ENDIAN = 3412
  1016. const m___PIC__ = 2
  1017. const m___PIE__ = 2
  1018. const m___PRAGMA_REDEFINE_EXTNAME = 1
  1019. const m___PRETTY_FUNCTION__ = "__func__"
  1020. const m___PTRDIFF_MAX__ = 0x7fffffff
  1021. const m___PTRDIFF_TYPE__ = "int"
  1022. const m___PTRDIFF_WIDTH__ = 32
  1023. const m___SCHAR_MAX__ = 0x7f
  1024. const m___SCHAR_WIDTH__ = 8
  1025. const m___SEG_FS = 1
  1026. const m___SEG_GS = 1
  1027. const m___SHRT_MAX__ = 0x7fff
  1028. const m___SHRT_WIDTH__ = 16
  1029. const m___SIG_ATOMIC_MAX__ = 0x7fffffff
  1030. const m___SIG_ATOMIC_TYPE__ = "int"
  1031. const m___SIG_ATOMIC_WIDTH__ = 32
  1032. const m___SIZEOF_DOUBLE__ = 8
  1033. const m___SIZEOF_FLOAT128__ = 16
  1034. const m___SIZEOF_FLOAT80__ = 12
  1035. const m___SIZEOF_FLOAT__ = 4
  1036. const m___SIZEOF_INT__ = 4
  1037. const m___SIZEOF_LONG_DOUBLE__ = 8
  1038. const m___SIZEOF_LONG_LONG__ = 8
  1039. const m___SIZEOF_LONG__ = 4
  1040. const m___SIZEOF_POINTER__ = 4
  1041. const m___SIZEOF_PTRDIFF_T__ = 4
  1042. const m___SIZEOF_SHORT__ = 2
  1043. const m___SIZEOF_SIZE_T__ = 4
  1044. const m___SIZEOF_WCHAR_T__ = 4
  1045. const m___SIZEOF_WINT_T__ = 4
  1046. const m___SIZE_MAX__ = 0xffffffff
  1047. const m___SIZE_WIDTH__ = 32
  1048. const m___STDC_HOSTED__ = 1
  1049. const m___STDC_IEC_559_COMPLEX__ = 1
  1050. const m___STDC_IEC_559__ = 1
  1051. const m___STDC_IEC_60559_BFP__ = 201404
  1052. const m___STDC_IEC_60559_COMPLEX__ = 201404
  1053. const m___STDC_ISO_10646__ = 201706
  1054. const m___STDC_UTF_16__ = 1
  1055. const m___STDC_UTF_32__ = 1
  1056. const m___STDC_VERSION__ = 201710
  1057. const m___STDC__ = 1
  1058. const m___UINT16_MAX__ = 0xffff
  1059. const m___UINT32_MAX__ = 0xffffffff
  1060. const m___UINT64_MAX__ = "0xffffffffffffffffU"
  1061. const m___UINT8_MAX__ = 0xff
  1062. const m___UINTMAX_MAX__ = "0xffffffffffffffffU"
  1063. const m___UINTPTR_MAX__ = 0xffffffff
  1064. const m___UINT_FAST16_MAX__ = 0xffffffff
  1065. const m___UINT_FAST32_MAX__ = 0xffffffff
  1066. const m___UINT_FAST64_MAX__ = "0xffffffffffffffffU"
  1067. const m___UINT_FAST8_MAX__ = 0xff
  1068. const m___UINT_LEAST16_MAX__ = 0xffff
  1069. const m___UINT_LEAST32_MAX__ = 0xffffffff
  1070. const m___UINT_LEAST64_MAX__ = "0xffffffffffffffffU"
  1071. const m___UINT_LEAST8_MAX__ = 0xff
  1072. const m___USE_TIME_BITS64 = 1
  1073. const m___VERSION__ = "12.2.0"
  1074. const m___WCHAR_MAX__ = 0x7fffffff
  1075. const m___WCHAR_WIDTH__ = 32
  1076. const m___WINT_MAX__ = 0xffffffff
  1077. const m___WINT_MIN__ = 0
  1078. const m___WINT_WIDTH__ = 32
  1079. const m___code_model_32__ = 1
  1080. const m___gnu_linux__ = 1
  1081. const m___i386 = 1
  1082. const m___i386__ = 1
  1083. const m___i686 = 1
  1084. const m___i686__ = 1
  1085. const m___inline = "inline"
  1086. const m___linux = 1
  1087. const m___linux__ = 1
  1088. const m___pentiumpro = 1
  1089. const m___pentiumpro__ = 1
  1090. const m___pic__ = 2
  1091. const m___pie__ = 2
  1092. const m___restrict = "restrict"
  1093. const m___restrict_arr = "restrict"
  1094. const m___tm_gmtoff = "tm_gmtoff"
  1095. const m___tm_zone = "tm_zone"
  1096. const m___unix = 1
  1097. const m___unix__ = 1
  1098. const m_alloca = "__builtin_alloca"
  1099. const m_i386 = 1
  1100. const m_linux = 1
  1101. const m_loff_t = "off_t"
  1102. const m_unix = 1
  1103. type t__builtin_va_list = uintptr
  1104. type t__predefined_size_t = uint32
  1105. type t__predefined_wchar_t = int32
  1106. type t__predefined_ptrdiff_t = int32
  1107. type Tsize_t = uint32
  1108. type Tssize_t = int32
  1109. type Tregister_t = int32
  1110. type Ttime_t = int64
  1111. type Tsuseconds_t = int64
  1112. type Tint8_t = int8
  1113. type Tint16_t = int16
  1114. type Tint32_t = int32
  1115. type Tint64_t = int64
  1116. type Tu_int64_t = uint64
  1117. type Tmode_t = uint32
  1118. type Tnlink_t = uint32
  1119. type Toff_t = int64
  1120. type Tino_t = uint64
  1121. type Tdev_t = uint64
  1122. type Tblksize_t = int32
  1123. type Tblkcnt_t = int64
  1124. type Tfsblkcnt_t = uint64
  1125. type Tfsfilcnt_t = uint64
  1126. type Ttimer_t = uintptr
  1127. type Tclockid_t = int32
  1128. type Tclock_t = int32
  1129. type Tpid_t = int32
  1130. type Tid_t = uint32
  1131. type Tuid_t = uint32
  1132. type Tgid_t = uint32
  1133. type Tkey_t = int32
  1134. type Tuseconds_t = uint32
  1135. type Tpthread_t = uintptr
  1136. type Tpthread_once_t = int32
  1137. type Tpthread_key_t = uint32
  1138. type Tpthread_spinlock_t = int32
  1139. type Tpthread_mutexattr_t = struct {
  1140. F__attr uint32
  1141. }
  1142. type Tpthread_condattr_t = struct {
  1143. F__attr uint32
  1144. }
  1145. type Tpthread_barrierattr_t = struct {
  1146. F__attr uint32
  1147. }
  1148. type Tpthread_rwlockattr_t = struct {
  1149. F__attr [2]uint32
  1150. }
  1151. type Tpthread_attr_t = struct {
  1152. F__u struct {
  1153. F__vi [0][9]int32
  1154. F__s [0][9]uint32
  1155. F__i [9]int32
  1156. }
  1157. }
  1158. type Tpthread_mutex_t = struct {
  1159. F__u struct {
  1160. F__vi [0][6]int32
  1161. F__p [0][6]uintptr
  1162. F__i [6]int32
  1163. }
  1164. F__ccgo_room int32
  1165. }
  1166. type Tpthread_cond_t = struct {
  1167. F__u struct {
  1168. F__vi [0][12]int32
  1169. F__p [0][12]uintptr
  1170. F__i [12]int32
  1171. }
  1172. }
  1173. type Tpthread_rwlock_t = struct {
  1174. F__u struct {
  1175. F__vi [0][8]int32
  1176. F__p [0][8]uintptr
  1177. F__i [8]int32
  1178. }
  1179. }
  1180. type Tpthread_barrier_t = struct {
  1181. F__u struct {
  1182. F__vi [0][5]int32
  1183. F__p [0][5]uintptr
  1184. F__i [5]int32
  1185. }
  1186. }
  1187. type Tu_int8_t = uint8
  1188. type Tu_int16_t = uint16
  1189. type Tu_int32_t = uint32
  1190. type Tcaddr_t = uintptr
  1191. type Tu_char = uint8
  1192. type Tu_short = uint16
  1193. type Tushort = uint16
  1194. type Tu_int = uint32
  1195. type Tuint = uint32
  1196. type Tu_long = uint32
  1197. type Tulong = uint32
  1198. type Tquad_t = int64
  1199. type Tu_quad_t = uint64
  1200. type Tuint16_t = uint16
  1201. type Tuint32_t = uint32
  1202. type Tuint64_t = uint64
  1203. type Ttimeval = struct {
  1204. Ftv_sec Ttime_t
  1205. Ftv_usec Tsuseconds_t
  1206. }
  1207. type Ttimespec = struct {
  1208. Ftv_sec Ttime_t
  1209. Ftv_nsec int32
  1210. F__ccgo12 uint32
  1211. }
  1212. type Tsigset_t = struct {
  1213. F__bits [32]uint32
  1214. }
  1215. type t__sigset_t = Tsigset_t
  1216. type Tfd_mask = uint32
  1217. type Tfd_set = struct {
  1218. Ffds_bits [32]uint32
  1219. }
  1220. type Tlocale_t = uintptr
  1221. type Tiovec = struct {
  1222. Fiov_base uintptr
  1223. Fiov_len Tsize_t
  1224. }
  1225. type Tflock = struct {
  1226. Fl_type int16
  1227. Fl_whence int16
  1228. Fl_start Toff_t
  1229. Fl_len Toff_t
  1230. Fl_pid Tpid_t
  1231. }
  1232. type Tfile_handle = struct {
  1233. Fhandle_bytes uint32
  1234. Fhandle_type int32
  1235. }
  1236. type Tf_owner_ex = struct {
  1237. Ftype1 int32
  1238. Fpid Tpid_t
  1239. }
  1240. type Tintptr_t = int32
  1241. type Titimerval = struct {
  1242. Fit_interval Ttimeval
  1243. Fit_value Ttimeval
  1244. }
  1245. type Ttimezone = struct {
  1246. Ftz_minuteswest int32
  1247. Ftz_dsttime int32
  1248. }
  1249. type Ttm = struct {
  1250. Ftm_sec int32
  1251. Ftm_min int32
  1252. Ftm_hour int32
  1253. Ftm_mday int32
  1254. Ftm_mon int32
  1255. Ftm_year int32
  1256. Ftm_wday int32
  1257. Ftm_yday int32
  1258. Ftm_isdst int32
  1259. Ftm_gmtoff int32
  1260. Ftm_zone uintptr
  1261. }
  1262. type Titimerspec = struct {
  1263. Fit_interval Ttimespec
  1264. Fit_value Ttimespec
  1265. }
  1266. type TXID = uint32
  1267. type TMask = uint32
  1268. type TAtom = uint32
  1269. type TVisualID = uint32
  1270. type TTime = uint32
  1271. type TWindow = uint32
  1272. type TDrawable = uint32
  1273. type TFont = uint32
  1274. type TPixmap = uint32
  1275. type TCursor = uint32
  1276. type TColormap = uint32
  1277. type TGContext = uint32
  1278. type TKeySym = uint32
  1279. type TKeyCode = uint8
  1280. type TINT32 = int32
  1281. type TINT16 = int16
  1282. type TINT8 = int8
  1283. type TCARD64 = uint64
  1284. type TCARD32 = uint32
  1285. type TCARD16 = uint16
  1286. type TCARD8 = uint8
  1287. type TBITS32 = uint32
  1288. type TBITS16 = uint16
  1289. type TBYTE = uint8
  1290. type TBOOL = uint8
  1291. type TxdmOpCode = int32
  1292. const _BROADCAST_QUERY = 1
  1293. const _QUERY = 2
  1294. const _INDIRECT_QUERY = 3
  1295. const _FORWARD_QUERY = 4
  1296. const _WILLING = 5
  1297. const _UNWILLING = 6
  1298. const _REQUEST = 7
  1299. const _ACCEPT = 8
  1300. const _DECLINE = 9
  1301. const _MANAGE = 10
  1302. const _REFUSE = 11
  1303. const _FAILED = 12
  1304. const _KEEPALIVE = 13
  1305. const _ALIVE = 14
  1306. type Txdmcp_states = int32
  1307. const _XDM_QUERY = 0
  1308. const _XDM_BROADCAST = 1
  1309. const _XDM_INDIRECT = 2
  1310. const _XDM_COLLECT_QUERY = 3
  1311. const _XDM_COLLECT_BROADCAST_QUERY = 4
  1312. const _XDM_COLLECT_INDIRECT_QUERY = 5
  1313. const _XDM_START_CONNECTION = 6
  1314. const _XDM_AWAIT_REQUEST_RESPONSE = 7
  1315. const _XDM_AWAIT_MANAGE_RESPONSE = 8
  1316. const _XDM_MANAGE = 9
  1317. const _XDM_RUN_SESSION = 10
  1318. const _XDM_OFF = 11
  1319. const _XDM_AWAIT_USER_INPUT = 12
  1320. const _XDM_KEEPALIVE = 13
  1321. const _XDM_AWAIT_ALIVE_RESPONSE = 14
  1322. const _XDM_KEEP_ME_LAST = 15
  1323. type TCARD8Ptr = uintptr
  1324. type TCARD16Ptr = uintptr
  1325. type TCARD32Ptr = uintptr
  1326. type TARRAY8 = struct {
  1327. Flength TCARD16
  1328. Fdata TCARD8Ptr
  1329. }
  1330. type T_ARRAY8 = TARRAY8
  1331. type TARRAY8Ptr = uintptr
  1332. type TARRAY16 = struct {
  1333. Flength TCARD8
  1334. Fdata TCARD16Ptr
  1335. }
  1336. type T_ARRAY16 = TARRAY16
  1337. type TARRAY16Ptr = uintptr
  1338. type TARRAY32 = struct {
  1339. Flength TCARD8
  1340. Fdata TCARD32Ptr
  1341. }
  1342. type T_ARRAY32 = TARRAY32
  1343. type TARRAY32Ptr = uintptr
  1344. type TARRAYofARRAY8 = struct {
  1345. Flength TCARD8
  1346. Fdata TARRAY8Ptr
  1347. }
  1348. type T_ARRAYofARRAY8 = TARRAYofARRAY8
  1349. type TARRAYofARRAY8Ptr = uintptr
  1350. type TXdmcpHeader = struct {
  1351. Fversion TCARD16
  1352. Fopcode TCARD16
  1353. Flength TCARD16
  1354. }
  1355. type T_XdmcpHeader = TXdmcpHeader
  1356. type TXdmcpHeaderPtr = uintptr
  1357. type TXdmcpBuffer = struct {
  1358. Fdata uintptr
  1359. Fsize int32
  1360. Fpointer int32
  1361. Fcount int32
  1362. }
  1363. type T_XdmcpBuffer = TXdmcpBuffer
  1364. type TXdmcpBufferPtr = uintptr
  1365. type TXdmAuthKeyRec = struct {
  1366. Fdata [8]TBYTE
  1367. }
  1368. type T_XdmAuthKey = TXdmAuthKeyRec
  1369. type TXdmAuthKeyPtr = uintptr
  1370. type TXdmcpNetaddr = uintptr
  1371. type Tuintptr_t = uint32
  1372. type Tintmax_t = int64
  1373. type Tuint8_t = uint8
  1374. type Tuintmax_t = uint64
  1375. type Tint_fast8_t = int8
  1376. type Tint_fast64_t = int64
  1377. type Tint_least8_t = int8
  1378. type Tint_least16_t = int16
  1379. type Tint_least32_t = int32
  1380. type Tint_least64_t = int64
  1381. type Tuint_fast8_t = uint8
  1382. type Tuint_fast64_t = uint64
  1383. type Tuint_least8_t = uint8
  1384. type Tuint_least16_t = uint16
  1385. type Tuint_least32_t = uint32
  1386. type Tuint_least64_t = uint64
  1387. type Tint_fast16_t = int32
  1388. type Tint_fast32_t = int32
  1389. type Tuint_fast16_t = uint32
  1390. type Tuint_fast32_t = uint32
  1391. type Twchar_t = int32
  1392. type Tdiv_t = struct {
  1393. Fquot int32
  1394. Frem int32
  1395. }
  1396. type Tldiv_t = struct {
  1397. Fquot int32
  1398. Frem int32
  1399. }
  1400. type Tlldiv_t = struct {
  1401. Fquot int64
  1402. Frem int64
  1403. }
  1404. // C documentation
  1405. //
  1406. // /*
  1407. // * This variant of malloc does not return NULL if zero size is passed into.
  1408. // */
  1409. func _xmalloc(tls *libc.TLS, size Tsize_t) (r uintptr) {
  1410. var v1 uint32
  1411. _ = v1
  1412. if size != 0 {
  1413. v1 = size
  1414. } else {
  1415. v1 = uint32(1)
  1416. }
  1417. return libc.Xmalloc(tls, v1)
  1418. }
  1419. // C documentation
  1420. //
  1421. // /*
  1422. // * This variant of calloc does not return NULL if zero count is passed into.
  1423. // */
  1424. func _xcalloc(tls *libc.TLS, n Tsize_t, size Tsize_t) (r uintptr) {
  1425. var v1 uint32
  1426. _ = v1
  1427. if n != 0 {
  1428. v1 = n
  1429. } else {
  1430. v1 = uint32(1)
  1431. }
  1432. return libc.Xcalloc(tls, v1, size)
  1433. }
  1434. // C documentation
  1435. //
  1436. // /*
  1437. // * This variant of realloc does not return NULL if zero size is passed into
  1438. // */
  1439. func _xrealloc(tls *libc.TLS, ptr uintptr, size Tsize_t) (r uintptr) {
  1440. var v1 uint32
  1441. _ = v1
  1442. if size != 0 {
  1443. v1 = size
  1444. } else {
  1445. v1 = uint32(1)
  1446. }
  1447. return libc.Xrealloc(tls, ptr, v1)
  1448. }
  1449. func XXdmcpAllocARRAY8(tls *libc.TLS, array TARRAY8Ptr, length int32) (r int32) {
  1450. /* length defined in ARRAY8 struct is a CARD16 (not CARD8 like the rest) */
  1451. if length > int32(m_UINT16_MAX) || length < 0 {
  1452. (*T_ARRAY8)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  1453. } else {
  1454. (*T_ARRAY8)(unsafe.Pointer(array)).Fdata = _xmalloc(tls, libc.Uint32FromInt32(length)*uint32(1))
  1455. }
  1456. if (*T_ARRAY8)(unsafe.Pointer(array)).Fdata == libc.UintptrFromInt32(0) {
  1457. (*T_ARRAY8)(unsafe.Pointer(array)).Flength = uint16(0)
  1458. return m_FALSE
  1459. }
  1460. (*T_ARRAY8)(unsafe.Pointer(array)).Flength = libc.Uint16FromInt32(length)
  1461. return int32(m_TRUE)
  1462. }
  1463. func XXdmcpAllocARRAY16(tls *libc.TLS, array TARRAY16Ptr, length int32) (r int32) {
  1464. /* length defined in ARRAY16 struct is a CARD8 */
  1465. if length > int32(m_UINT8_MAX) || length < 0 {
  1466. (*T_ARRAY16)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  1467. } else {
  1468. (*T_ARRAY16)(unsafe.Pointer(array)).Fdata = _xmalloc(tls, libc.Uint32FromInt32(length)*uint32(2))
  1469. }
  1470. if (*T_ARRAY16)(unsafe.Pointer(array)).Fdata == libc.UintptrFromInt32(0) {
  1471. (*T_ARRAY16)(unsafe.Pointer(array)).Flength = uint8(0)
  1472. return m_FALSE
  1473. }
  1474. (*T_ARRAY16)(unsafe.Pointer(array)).Flength = libc.Uint8FromInt32(length)
  1475. return int32(m_TRUE)
  1476. }
  1477. func XXdmcpAllocARRAY32(tls *libc.TLS, array TARRAY32Ptr, length int32) (r int32) {
  1478. /* length defined in ARRAY32 struct is a CARD8 */
  1479. if length > int32(m_UINT8_MAX) || length < 0 {
  1480. (*T_ARRAY32)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  1481. } else {
  1482. (*T_ARRAY32)(unsafe.Pointer(array)).Fdata = _xmalloc(tls, libc.Uint32FromInt32(length)*uint32(4))
  1483. }
  1484. if (*T_ARRAY32)(unsafe.Pointer(array)).Fdata == libc.UintptrFromInt32(0) {
  1485. (*T_ARRAY32)(unsafe.Pointer(array)).Flength = uint8(0)
  1486. return m_FALSE
  1487. }
  1488. (*T_ARRAY32)(unsafe.Pointer(array)).Flength = libc.Uint8FromInt32(length)
  1489. return int32(m_TRUE)
  1490. }
  1491. func XXdmcpAllocARRAYofARRAY8(tls *libc.TLS, array TARRAYofARRAY8Ptr, length int32) (r int32) {
  1492. /* length defined in ARRAYofARRAY8 struct is a CARD8 */
  1493. if length > int32(m_UINT8_MAX) || length < 0 {
  1494. (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  1495. } else {
  1496. /*
  1497. * Use calloc to ensure the pointers are cleared out so we
  1498. * don't try to free garbage if XdmcpDisposeARRAYofARRAY8()
  1499. * is called before the caller sets them to valid pointers.
  1500. */
  1501. (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Fdata = _xcalloc(tls, libc.Uint32FromInt32(length), uint32(8))
  1502. }
  1503. if (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Fdata == libc.UintptrFromInt32(0) {
  1504. (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Flength = uint8(0)
  1505. return m_FALSE
  1506. }
  1507. (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Flength = libc.Uint8FromInt32(length)
  1508. return int32(m_TRUE)
  1509. }
  1510. func XXdmcpARRAY8Equal(tls *libc.TLS, array1 TARRAY8Ptr, array2 TARRAY8Ptr) (r int32) {
  1511. if libc.Int32FromUint16((*T_ARRAY8)(unsafe.Pointer(array1)).Flength) != libc.Int32FromUint16((*T_ARRAY8)(unsafe.Pointer(array2)).Flength) {
  1512. return m_FALSE
  1513. }
  1514. if libc.Xmemcmp(tls, (*T_ARRAY8)(unsafe.Pointer(array1)).Fdata, (*T_ARRAY8)(unsafe.Pointer(array2)).Fdata, uint32((*T_ARRAY8)(unsafe.Pointer(array1)).Flength)) != 0 {
  1515. return m_FALSE
  1516. }
  1517. return int32(m_TRUE)
  1518. }
  1519. func XXdmcpCopyARRAY8(tls *libc.TLS, src TARRAY8Ptr, dst TARRAY8Ptr) (r int32) {
  1520. if !(XXdmcpAllocARRAY8(tls, dst, libc.Int32FromUint16((*T_ARRAY8)(unsafe.Pointer(src)).Flength)) != 0) {
  1521. return m_FALSE
  1522. }
  1523. libc.Xmemmove(tls, (*T_ARRAY8)(unsafe.Pointer(dst)).Fdata, (*T_ARRAY8)(unsafe.Pointer(src)).Fdata, uint32((*T_ARRAY8)(unsafe.Pointer(src)).Flength)*uint32(1))
  1524. return int32(m_TRUE)
  1525. }
  1526. func XXdmcpReallocARRAY8(tls *libc.TLS, array TARRAY8Ptr, length int32) (r int32) {
  1527. var newData TCARD8Ptr
  1528. _ = newData
  1529. /* length defined in ARRAY8 struct is a CARD16 (not CARD8 like the rest) */
  1530. if length > int32(m_UINT16_MAX) || length < 0 {
  1531. return m_FALSE
  1532. }
  1533. newData = _xrealloc(tls, (*T_ARRAY8)(unsafe.Pointer(array)).Fdata, libc.Uint32FromInt32(length)*uint32(1))
  1534. if !(newData != 0) {
  1535. return m_FALSE
  1536. }
  1537. (*T_ARRAY8)(unsafe.Pointer(array)).Flength = libc.Uint16FromInt32(length)
  1538. (*T_ARRAY8)(unsafe.Pointer(array)).Fdata = newData
  1539. return int32(m_TRUE)
  1540. }
  1541. func XXdmcpReallocARRAYofARRAY8(tls *libc.TLS, array TARRAYofARRAY8Ptr, length int32) (r int32) {
  1542. var newData TARRAY8Ptr
  1543. _ = newData
  1544. /* length defined in ARRAYofARRAY8 struct is a CARD8 */
  1545. if length > int32(m_UINT8_MAX) || length < 0 {
  1546. return m_FALSE
  1547. }
  1548. newData = _xrealloc(tls, (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Fdata, libc.Uint32FromInt32(length)*uint32(8))
  1549. if !(newData != 0) {
  1550. return m_FALSE
  1551. }
  1552. if length > libc.Int32FromUint8((*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Flength) {
  1553. libc.Xmemset(tls, newData+uintptr((*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Flength)*8, 0, libc.Uint32FromInt32(length-libc.Int32FromUint8((*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Flength))*uint32(8))
  1554. }
  1555. (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Flength = libc.Uint8FromInt32(length)
  1556. (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Fdata = newData
  1557. return int32(m_TRUE)
  1558. }
  1559. func XXdmcpReallocARRAY16(tls *libc.TLS, array TARRAY16Ptr, length int32) (r int32) {
  1560. var newData TCARD16Ptr
  1561. _ = newData
  1562. /* length defined in ARRAY16 struct is a CARD8 */
  1563. if length > int32(m_UINT8_MAX) || length < 0 {
  1564. return m_FALSE
  1565. }
  1566. newData = _xrealloc(tls, (*T_ARRAY16)(unsafe.Pointer(array)).Fdata, libc.Uint32FromInt32(length)*uint32(2))
  1567. if !(newData != 0) {
  1568. return m_FALSE
  1569. }
  1570. (*T_ARRAY16)(unsafe.Pointer(array)).Flength = libc.Uint8FromInt32(length)
  1571. (*T_ARRAY16)(unsafe.Pointer(array)).Fdata = newData
  1572. return int32(m_TRUE)
  1573. }
  1574. func XXdmcpReallocARRAY32(tls *libc.TLS, array TARRAY32Ptr, length int32) (r int32) {
  1575. var newData TCARD32Ptr
  1576. _ = newData
  1577. /* length defined in ARRAY32 struct is a CARD8 */
  1578. if length > int32(m_UINT8_MAX) || length < 0 {
  1579. return m_FALSE
  1580. }
  1581. newData = _xrealloc(tls, (*T_ARRAY32)(unsafe.Pointer(array)).Fdata, libc.Uint32FromInt32(length)*uint32(4))
  1582. if !(newData != 0) {
  1583. return m_FALSE
  1584. }
  1585. (*T_ARRAY32)(unsafe.Pointer(array)).Flength = libc.Uint8FromInt32(length)
  1586. (*T_ARRAY32)(unsafe.Pointer(array)).Fdata = newData
  1587. return int32(m_TRUE)
  1588. }
  1589. func XXdmcpDisposeARRAY8(tls *libc.TLS, array TARRAY8Ptr) {
  1590. libc.Xfree(tls, (*T_ARRAY8)(unsafe.Pointer(array)).Fdata)
  1591. (*T_ARRAY8)(unsafe.Pointer(array)).Flength = uint16(0)
  1592. (*T_ARRAY8)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  1593. }
  1594. func XXdmcpDisposeARRAY16(tls *libc.TLS, array TARRAY16Ptr) {
  1595. libc.Xfree(tls, (*T_ARRAY16)(unsafe.Pointer(array)).Fdata)
  1596. (*T_ARRAY16)(unsafe.Pointer(array)).Flength = uint8(0)
  1597. (*T_ARRAY16)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  1598. }
  1599. func XXdmcpDisposeARRAY32(tls *libc.TLS, array TARRAY32Ptr) {
  1600. libc.Xfree(tls, (*T_ARRAY32)(unsafe.Pointer(array)).Fdata)
  1601. (*T_ARRAY32)(unsafe.Pointer(array)).Flength = uint8(0)
  1602. (*T_ARRAY32)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  1603. }
  1604. func XXdmcpDisposeARRAYofARRAY8(tls *libc.TLS, array TARRAYofARRAY8Ptr) {
  1605. var i int32
  1606. _ = i
  1607. if (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Fdata != libc.UintptrFromInt32(0) {
  1608. i = 0
  1609. for {
  1610. if !(i < libc.Int32FromUint8((*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Flength)) {
  1611. break
  1612. }
  1613. XXdmcpDisposeARRAY8(tls, (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Fdata+uintptr(i)*8)
  1614. goto _1
  1615. _1:
  1616. ;
  1617. i++
  1618. }
  1619. libc.Xfree(tls, (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Fdata)
  1620. }
  1621. (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Flength = uint8(0)
  1622. (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  1623. }
  1624. const m_AF_ALG = "PF_ALG"
  1625. const m_AF_APPLETALK = "PF_APPLETALK"
  1626. const m_AF_ASH = "PF_ASH"
  1627. const m_AF_ATMPVC = "PF_ATMPVC"
  1628. const m_AF_ATMSVC = "PF_ATMSVC"
  1629. const m_AF_AX25 = "PF_AX25"
  1630. const m_AF_BLUETOOTH = "PF_BLUETOOTH"
  1631. const m_AF_BRIDGE = "PF_BRIDGE"
  1632. const m_AF_CAIF = "PF_CAIF"
  1633. const m_AF_CAN = "PF_CAN"
  1634. const m_AF_DECnet = "PF_DECnet"
  1635. const m_AF_ECONET = "PF_ECONET"
  1636. const m_AF_FILE = "AF_LOCAL"
  1637. const m_AF_IB = "PF_IB"
  1638. const m_AF_IEEE802154 = "PF_IEEE802154"
  1639. const m_AF_INET = "PF_INET"
  1640. const m_AF_INET6 = "PF_INET6"
  1641. const m_AF_IPX = "PF_IPX"
  1642. const m_AF_IRDA = "PF_IRDA"
  1643. const m_AF_ISDN = "PF_ISDN"
  1644. const m_AF_IUCV = "PF_IUCV"
  1645. const m_AF_KCM = "PF_KCM"
  1646. const m_AF_KEY = "PF_KEY"
  1647. const m_AF_LLC = "PF_LLC"
  1648. const m_AF_LOCAL = "PF_LOCAL"
  1649. const m_AF_MAX = "PF_MAX"
  1650. const m_AF_MPLS = "PF_MPLS"
  1651. const m_AF_NETBEUI = "PF_NETBEUI"
  1652. const m_AF_NETLINK = "PF_NETLINK"
  1653. const m_AF_NETROM = "PF_NETROM"
  1654. const m_AF_NFC = "PF_NFC"
  1655. const m_AF_PACKET = "PF_PACKET"
  1656. const m_AF_PHONET = "PF_PHONET"
  1657. const m_AF_PPPOX = "PF_PPPOX"
  1658. const m_AF_QIPCRTR = "PF_QIPCRTR"
  1659. const m_AF_RDS = "PF_RDS"
  1660. const m_AF_ROSE = "PF_ROSE"
  1661. const m_AF_ROUTE = "PF_ROUTE"
  1662. const m_AF_RXRPC = "PF_RXRPC"
  1663. const m_AF_SECURITY = "PF_SECURITY"
  1664. const m_AF_SMC = "PF_SMC"
  1665. const m_AF_SNA = "PF_SNA"
  1666. const m_AF_TIPC = "PF_TIPC"
  1667. const m_AF_UNIX = "AF_LOCAL"
  1668. const m_AF_UNSPEC = "PF_UNSPEC"
  1669. const m_AF_VSOCK = "PF_VSOCK"
  1670. const m_AF_WANPIPE = "PF_WANPIPE"
  1671. const m_AF_X25 = "PF_X25"
  1672. const m_AF_XDP = "PF_XDP"
  1673. const m_MSG_BATCH = 0x40000
  1674. const m_MSG_CMSG_CLOEXEC = 0x40000000
  1675. const m_MSG_CONFIRM = 0x0800
  1676. const m_MSG_CTRUNC = 0x0008
  1677. const m_MSG_DONTROUTE = 0x0004
  1678. const m_MSG_DONTWAIT = 0x0040
  1679. const m_MSG_EOR = 0x0080
  1680. const m_MSG_ERRQUEUE = 0x2000
  1681. const m_MSG_FASTOPEN = 0x20000000
  1682. const m_MSG_FIN = 0x0200
  1683. const m_MSG_MORE = 0x8000
  1684. const m_MSG_NOSIGNAL = 0x4000
  1685. const m_MSG_OOB = 0x0001
  1686. const m_MSG_PEEK = 0x0002
  1687. const m_MSG_PROXY = 0x0010
  1688. const m_MSG_RST = 0x1000
  1689. const m_MSG_SYN = 0x0400
  1690. const m_MSG_TRUNC = 0x0020
  1691. const m_MSG_WAITALL = 0x0100
  1692. const m_MSG_WAITFORONE = 0x10000
  1693. const m_MSG_ZEROCOPY = 0x4000000
  1694. const m_PF_ALG = 38
  1695. const m_PF_APPLETALK = 5
  1696. const m_PF_ASH = 18
  1697. const m_PF_ATMPVC = 8
  1698. const m_PF_ATMSVC = 20
  1699. const m_PF_AX25 = 3
  1700. const m_PF_BLUETOOTH = 31
  1701. const m_PF_BRIDGE = 7
  1702. const m_PF_CAIF = 37
  1703. const m_PF_CAN = 29
  1704. const m_PF_DECnet = 12
  1705. const m_PF_ECONET = 19
  1706. const m_PF_FILE = "PF_LOCAL"
  1707. const m_PF_IB = 27
  1708. const m_PF_IEEE802154 = 36
  1709. const m_PF_INET = 2
  1710. const m_PF_INET6 = 10
  1711. const m_PF_IPX = 4
  1712. const m_PF_IRDA = 23
  1713. const m_PF_ISDN = 34
  1714. const m_PF_IUCV = 32
  1715. const m_PF_KCM = 41
  1716. const m_PF_KEY = 15
  1717. const m_PF_LLC = 26
  1718. const m_PF_LOCAL = 1
  1719. const m_PF_MAX = 45
  1720. const m_PF_MPLS = 28
  1721. const m_PF_NETBEUI = 13
  1722. const m_PF_NETLINK = 16
  1723. const m_PF_NETROM = 6
  1724. const m_PF_NFC = 39
  1725. const m_PF_PACKET = 17
  1726. const m_PF_PHONET = 35
  1727. const m_PF_PPPOX = 24
  1728. const m_PF_QIPCRTR = 42
  1729. const m_PF_RDS = 21
  1730. const m_PF_ROSE = 11
  1731. const m_PF_ROUTE = "PF_NETLINK"
  1732. const m_PF_RXRPC = 33
  1733. const m_PF_SECURITY = 14
  1734. const m_PF_SMC = 43
  1735. const m_PF_SNA = 22
  1736. const m_PF_TIPC = 30
  1737. const m_PF_UNIX = "PF_LOCAL"
  1738. const m_PF_UNSPEC = 0
  1739. const m_PF_VSOCK = 40
  1740. const m_PF_WANPIPE = 25
  1741. const m_PF_X25 = 9
  1742. const m_PF_XDP = 44
  1743. const m_SCM_CREDENTIALS = 0x02
  1744. const m_SCM_RIGHTS = 0x01
  1745. const m_SCM_TIMESTAMP = "SO_TIMESTAMP"
  1746. const m_SCM_TIMESTAMPING = "SO_TIMESTAMPING"
  1747. const m_SCM_TIMESTAMPING_OPT_STATS = 54
  1748. const m_SCM_TIMESTAMPING_PKTINFO = 58
  1749. const m_SCM_TIMESTAMPNS = "SO_TIMESTAMPNS"
  1750. const m_SCM_TXTIME = "SO_TXTIME"
  1751. const m_SCM_WIFI_STATUS = "SO_WIFI_STATUS"
  1752. const m_SHUT_RD = 0
  1753. const m_SHUT_RDWR = 2
  1754. const m_SHUT_WR = 1
  1755. const m_SOCK_CLOEXEC = 02000000
  1756. const m_SOCK_DCCP = 6
  1757. const m_SOCK_DGRAM = 2
  1758. const m_SOCK_NONBLOCK = 04000
  1759. const m_SOCK_PACKET = 10
  1760. const m_SOCK_RAW = 3
  1761. const m_SOCK_RDM = 4
  1762. const m_SOCK_SEQPACKET = 5
  1763. const m_SOCK_STREAM = 1
  1764. const m_SOL_AAL = 265
  1765. const m_SOL_ALG = 279
  1766. const m_SOL_ATM = 264
  1767. const m_SOL_BLUETOOTH = 274
  1768. const m_SOL_CAIF = 278
  1769. const m_SOL_DCCP = 269
  1770. const m_SOL_DECNET = 261
  1771. const m_SOL_ICMPV6 = 58
  1772. const m_SOL_IP = 0
  1773. const m_SOL_IPV6 = 41
  1774. const m_SOL_IRDA = 266
  1775. const m_SOL_IUCV = 277
  1776. const m_SOL_KCM = 281
  1777. const m_SOL_LLC = 268
  1778. const m_SOL_NETBEUI = 267
  1779. const m_SOL_NETLINK = 270
  1780. const m_SOL_NFC = 280
  1781. const m_SOL_PACKET = 263
  1782. const m_SOL_PNPIPE = 275
  1783. const m_SOL_PPPOL2TP = 273
  1784. const m_SOL_RAW = 255
  1785. const m_SOL_RDS = 276
  1786. const m_SOL_RXRPC = 272
  1787. const m_SOL_SOCKET = 1
  1788. const m_SOL_TIPC = 271
  1789. const m_SOL_TLS = 282
  1790. const m_SOL_X25 = 262
  1791. const m_SOL_XDP = 283
  1792. const m_SOMAXCONN = 128
  1793. const m_SO_ACCEPTCONN = 30
  1794. const m_SO_ATTACH_BPF = 50
  1795. const m_SO_ATTACH_FILTER = 26
  1796. const m_SO_ATTACH_REUSEPORT_CBPF = 51
  1797. const m_SO_ATTACH_REUSEPORT_EBPF = 52
  1798. const m_SO_BINDTODEVICE = 25
  1799. const m_SO_BINDTOIFINDEX = 62
  1800. const m_SO_BPF_EXTENSIONS = 48
  1801. const m_SO_BROADCAST = 6
  1802. const m_SO_BSDCOMPAT = 14
  1803. const m_SO_BUSY_POLL = 46
  1804. const m_SO_BUSY_POLL_BUDGET = 70
  1805. const m_SO_CNX_ADVICE = 53
  1806. const m_SO_COOKIE = 57
  1807. const m_SO_DEBUG = 1
  1808. const m_SO_DETACH_BPF = "SO_DETACH_FILTER"
  1809. const m_SO_DETACH_FILTER = 27
  1810. const m_SO_DETACH_REUSEPORT_BPF = 68
  1811. const m_SO_DOMAIN = 39
  1812. const m_SO_DONTROUTE = 5
  1813. const m_SO_ERROR = 4
  1814. const m_SO_GET_FILTER = "SO_ATTACH_FILTER"
  1815. const m_SO_INCOMING_CPU = 49
  1816. const m_SO_INCOMING_NAPI_ID = 56
  1817. const m_SO_KEEPALIVE = 9
  1818. const m_SO_LINGER = 13
  1819. const m_SO_LOCK_FILTER = 44
  1820. const m_SO_MARK = 36
  1821. const m_SO_MAX_PACING_RATE = 47
  1822. const m_SO_MEMINFO = 55
  1823. const m_SO_NOFCS = 43
  1824. const m_SO_NO_CHECK = 11
  1825. const m_SO_OOBINLINE = 10
  1826. const m_SO_PASSCRED = 16
  1827. const m_SO_PASSSEC = 34
  1828. const m_SO_PEEK_OFF = 42
  1829. const m_SO_PEERCRED = 17
  1830. const m_SO_PEERGROUPS = 59
  1831. const m_SO_PEERNAME = 28
  1832. const m_SO_PEERSEC = 31
  1833. const m_SO_PREFER_BUSY_POLL = 69
  1834. const m_SO_PRIORITY = 12
  1835. const m_SO_PROTOCOL = 38
  1836. const m_SO_RCVBUF = 8
  1837. const m_SO_RCVBUFFORCE = 33
  1838. const m_SO_RCVLOWAT = 18
  1839. const m_SO_RCVTIMEO = 66
  1840. const m_SO_REUSEADDR = 2
  1841. const m_SO_REUSEPORT = 15
  1842. const m_SO_RXQ_OVFL = 40
  1843. const m_SO_SECURITY_AUTHENTICATION = 22
  1844. const m_SO_SECURITY_ENCRYPTION_NETWORK = 24
  1845. const m_SO_SECURITY_ENCRYPTION_TRANSPORT = 23
  1846. const m_SO_SELECT_ERR_QUEUE = 45
  1847. const m_SO_SNDBUF = 7
  1848. const m_SO_SNDBUFFORCE = 32
  1849. const m_SO_SNDLOWAT = 19
  1850. const m_SO_SNDTIMEO = 67
  1851. const m_SO_TIMESTAMP = 63
  1852. const m_SO_TIMESTAMPING = 65
  1853. const m_SO_TIMESTAMPNS = 64
  1854. const m_SO_TXTIME = 61
  1855. const m_SO_TYPE = 3
  1856. const m_SO_WIFI_STATUS = 41
  1857. const m_SO_ZEROCOPY = 60
  1858. type Tsocklen_t = uint32
  1859. type Tsa_family_t = uint16
  1860. type Tmsghdr = struct {
  1861. Fmsg_name uintptr
  1862. Fmsg_namelen Tsocklen_t
  1863. Fmsg_iov uintptr
  1864. Fmsg_iovlen int32
  1865. Fmsg_control uintptr
  1866. Fmsg_controllen Tsocklen_t
  1867. Fmsg_flags int32
  1868. }
  1869. type Tcmsghdr = struct {
  1870. Fcmsg_len Tsocklen_t
  1871. Fcmsg_level int32
  1872. Fcmsg_type int32
  1873. }
  1874. type Tucred = struct {
  1875. Fpid Tpid_t
  1876. Fuid Tuid_t
  1877. Fgid Tgid_t
  1878. }
  1879. type Tmmsghdr = struct {
  1880. Fmsg_hdr Tmsghdr
  1881. Fmsg_len uint32
  1882. }
  1883. type Tlinger = struct {
  1884. Fl_onoff int32
  1885. Fl_linger int32
  1886. }
  1887. type Tsockaddr = struct {
  1888. Fsa_family Tsa_family_t
  1889. Fsa_data [14]int8
  1890. }
  1891. type Tsockaddr_storage = struct {
  1892. Fss_family Tsa_family_t
  1893. F__ss_padding [122]int8
  1894. F__ss_align uint32
  1895. }
  1896. func XXdmcpFill(tls *libc.TLS, fd int32, buffer TXdmcpBufferPtr, from TXdmcpNetaddr, fromlen uintptr) (r int32) {
  1897. var newBuf uintptr
  1898. _ = newBuf
  1899. if (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fsize < int32(m_XDM_MAX_MSGLEN) {
  1900. newBuf = libc.Xmalloc(tls, uint32(m_XDM_MAX_MSGLEN))
  1901. if newBuf != 0 {
  1902. libc.Xfree(tls, (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fdata)
  1903. (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fdata = newBuf
  1904. (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fsize = int32(m_XDM_MAX_MSGLEN)
  1905. }
  1906. }
  1907. (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fpointer = 0
  1908. (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fcount = libc.Xrecvfrom(tls, fd, (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fdata, libc.Uint32FromInt32((*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fsize), 0, from, fromlen)
  1909. if (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fcount < int32(6) {
  1910. (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fcount = 0
  1911. return m_FALSE
  1912. }
  1913. return int32(m_TRUE)
  1914. }
  1915. func XXdmcpFlush(tls *libc.TLS, fd int32, buffer TXdmcpBufferPtr, to TXdmcpNetaddr, tolen int32) (r int32) {
  1916. var result int32
  1917. _ = result
  1918. result = libc.Xsendto(tls, fd, (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fdata, libc.Uint32FromInt32((*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fpointer), 0, to, libc.Uint32FromInt32(tolen))
  1919. if result != (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fpointer {
  1920. return m_FALSE
  1921. }
  1922. return int32(m_TRUE)
  1923. }
  1924. const m_Time_t = "time_t"
  1925. const m_random = "lrand48"
  1926. const m_srandom = "srand48"
  1927. func XXdmcpGenerateKey(tls *libc.TLS, key TXdmAuthKeyPtr) {
  1928. libbsd.Xarc4random_buf(tls, key, libc.Uint32FromInt32(8))
  1929. }
  1930. func XXdmcpCompareKeys(tls *libc.TLS, a TXdmAuthKeyPtr, b TXdmAuthKeyPtr) (r int32) {
  1931. var i int32
  1932. _ = i
  1933. i = 0
  1934. for {
  1935. if !(i < int32(8)) {
  1936. break
  1937. }
  1938. if libc.Int32FromUint8(*(*TBYTE)(unsafe.Pointer(a + uintptr(i)))) != libc.Int32FromUint8(*(*TBYTE)(unsafe.Pointer(b + uintptr(i)))) {
  1939. return m_FALSE
  1940. }
  1941. goto _1
  1942. _1:
  1943. ;
  1944. i++
  1945. }
  1946. return int32(m_TRUE)
  1947. }
  1948. func XXdmcpIncrementKey(tls *libc.TLS, key TXdmAuthKeyPtr) {
  1949. var i, v3 int32
  1950. var v1 TBYTE
  1951. var v2 uintptr
  1952. _, _, _, _ = i, v1, v2, v3
  1953. i = int32(7)
  1954. for {
  1955. v2 = key + uintptr(i)
  1956. *(*TBYTE)(unsafe.Pointer(v2))++
  1957. v1 = *(*TBYTE)(unsafe.Pointer(v2))
  1958. if !(libc.Int32FromUint8(v1) == 0) {
  1959. break
  1960. }
  1961. i--
  1962. v3 = i
  1963. if v3 < 0 {
  1964. break
  1965. }
  1966. }
  1967. }
  1968. func XXdmcpDecrementKey(tls *libc.TLS, key TXdmAuthKeyPtr) {
  1969. var i, v3 int32
  1970. var v1 TBYTE
  1971. var v2 uintptr
  1972. _, _, _, _ = i, v1, v2, v3
  1973. i = int32(7)
  1974. for {
  1975. v2 = key + uintptr(i)
  1976. v1 = *(*TBYTE)(unsafe.Pointer(v2))
  1977. *(*TBYTE)(unsafe.Pointer(v2))--
  1978. if !(libc.Int32FromUint8(v1) == 0) {
  1979. break
  1980. }
  1981. i--
  1982. v3 = i
  1983. if v3 < 0 {
  1984. break
  1985. }
  1986. }
  1987. }
  1988. func XXdmcpReadHeader(tls *libc.TLS, buffer TXdmcpBufferPtr, header TXdmcpHeaderPtr) (r int32) {
  1989. if XXdmcpReadCARD16(tls, buffer, header) != 0 && XXdmcpReadCARD16(tls, buffer, header+2) != 0 && XXdmcpReadCARD16(tls, buffer, header+4) != 0 {
  1990. return int32(m_TRUE)
  1991. }
  1992. return m_FALSE
  1993. }
  1994. func XXdmcpReadRemaining(tls *libc.TLS, buffer TXdmcpBufferPtr) (r int32) {
  1995. return (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fcount - (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fpointer
  1996. }
  1997. func XXdmcpReadARRAY8(tls *libc.TLS, buffer TXdmcpBufferPtr, array TARRAY8Ptr) (r int32) {
  1998. var i int32
  1999. _ = i
  2000. /*
  2001. * When returning FALSE, guarantee that array->data = 0.
  2002. * This allows the user to safely call XdmcpDisposeARRAY8(array)
  2003. * regardless of the return value below.
  2004. * Note that XdmcpDisposeARRAY*(array) will call free(array->data),
  2005. * so we must guarantee that array->data is NULL or a malloced pointer.
  2006. */
  2007. if !(XXdmcpReadCARD16(tls, buffer, array) != 0) {
  2008. (*T_ARRAY8)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  2009. return m_FALSE
  2010. }
  2011. if !((*T_ARRAY8)(unsafe.Pointer(array)).Flength != 0) {
  2012. (*T_ARRAY8)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  2013. return int32(m_TRUE)
  2014. }
  2015. (*T_ARRAY8)(unsafe.Pointer(array)).Fdata = libc.Xmalloc(tls, uint32((*T_ARRAY8)(unsafe.Pointer(array)).Flength)*uint32(1))
  2016. if !((*T_ARRAY8)(unsafe.Pointer(array)).Fdata != 0) {
  2017. return m_FALSE
  2018. }
  2019. i = 0
  2020. for {
  2021. if !(i < libc.Int32FromUint16((*T_ARRAY8)(unsafe.Pointer(array)).Flength)) {
  2022. break
  2023. }
  2024. if !(XXdmcpReadCARD8(tls, buffer, (*T_ARRAY8)(unsafe.Pointer(array)).Fdata+uintptr(i)) != 0) {
  2025. libc.Xfree(tls, (*T_ARRAY8)(unsafe.Pointer(array)).Fdata)
  2026. (*T_ARRAY8)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  2027. (*T_ARRAY8)(unsafe.Pointer(array)).Flength = uint16(0)
  2028. return m_FALSE
  2029. }
  2030. goto _1
  2031. _1:
  2032. ;
  2033. i++
  2034. }
  2035. return int32(m_TRUE)
  2036. }
  2037. func XXdmcpReadARRAY16(tls *libc.TLS, buffer TXdmcpBufferPtr, array TARRAY16Ptr) (r int32) {
  2038. var i int32
  2039. _ = i
  2040. /*
  2041. * When returning FALSE, guarantee that array->data = 0.
  2042. * This allows the user to safely call XdmcpDisposeARRAY16(array)
  2043. * regardless of the return value below.
  2044. * Note that XdmcpDisposeARRAY*(array) will call free(array->data),
  2045. * so we must guarantee that array->data is NULL or a malloced pointer.
  2046. */
  2047. if !(XXdmcpReadCARD8(tls, buffer, array) != 0) {
  2048. (*T_ARRAY16)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  2049. return m_FALSE
  2050. }
  2051. if !((*T_ARRAY16)(unsafe.Pointer(array)).Flength != 0) {
  2052. (*T_ARRAY16)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  2053. return int32(m_TRUE)
  2054. }
  2055. (*T_ARRAY16)(unsafe.Pointer(array)).Fdata = libc.Xmalloc(tls, uint32((*T_ARRAY16)(unsafe.Pointer(array)).Flength)*uint32(2))
  2056. if !((*T_ARRAY16)(unsafe.Pointer(array)).Fdata != 0) {
  2057. return m_FALSE
  2058. }
  2059. i = 0
  2060. for {
  2061. if !(i < libc.Int32FromUint8((*T_ARRAY16)(unsafe.Pointer(array)).Flength)) {
  2062. break
  2063. }
  2064. if !(XXdmcpReadCARD16(tls, buffer, (*T_ARRAY16)(unsafe.Pointer(array)).Fdata+uintptr(i)*2) != 0) {
  2065. libc.Xfree(tls, (*T_ARRAY16)(unsafe.Pointer(array)).Fdata)
  2066. (*T_ARRAY16)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  2067. (*T_ARRAY16)(unsafe.Pointer(array)).Flength = uint8(0)
  2068. return m_FALSE
  2069. }
  2070. goto _1
  2071. _1:
  2072. ;
  2073. i++
  2074. }
  2075. return int32(m_TRUE)
  2076. }
  2077. func XXdmcpReadARRAY32(tls *libc.TLS, buffer TXdmcpBufferPtr, array TARRAY32Ptr) (r int32) {
  2078. var i int32
  2079. _ = i
  2080. /*
  2081. * When returning FALSE, guarantee that array->data = 0.
  2082. * This allows the user to safely call XdmcpDisposeARRAY32(array)
  2083. * regardless of the return value below.
  2084. * Note that XdmcpDisposeARRAY*(array) will call free(array->data),
  2085. * so we must guarantee that array->data is NULL or a malloced pointer.
  2086. */
  2087. if !(XXdmcpReadCARD8(tls, buffer, array) != 0) {
  2088. (*T_ARRAY32)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  2089. return m_FALSE
  2090. }
  2091. if !((*T_ARRAY32)(unsafe.Pointer(array)).Flength != 0) {
  2092. (*T_ARRAY32)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  2093. return int32(m_TRUE)
  2094. }
  2095. (*T_ARRAY32)(unsafe.Pointer(array)).Fdata = libc.Xmalloc(tls, uint32((*T_ARRAY32)(unsafe.Pointer(array)).Flength)*uint32(4))
  2096. if !((*T_ARRAY32)(unsafe.Pointer(array)).Fdata != 0) {
  2097. return m_FALSE
  2098. }
  2099. i = 0
  2100. for {
  2101. if !(i < libc.Int32FromUint8((*T_ARRAY32)(unsafe.Pointer(array)).Flength)) {
  2102. break
  2103. }
  2104. if !(XXdmcpReadCARD32(tls, buffer, (*T_ARRAY32)(unsafe.Pointer(array)).Fdata+uintptr(i)*4) != 0) {
  2105. libc.Xfree(tls, (*T_ARRAY32)(unsafe.Pointer(array)).Fdata)
  2106. (*T_ARRAY32)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  2107. (*T_ARRAY32)(unsafe.Pointer(array)).Flength = uint8(0)
  2108. return m_FALSE
  2109. }
  2110. goto _1
  2111. _1:
  2112. ;
  2113. i++
  2114. }
  2115. return int32(m_TRUE)
  2116. }
  2117. func XXdmcpReadARRAYofARRAY8(tls *libc.TLS, buffer TXdmcpBufferPtr, array TARRAYofARRAY8Ptr) (r int32) {
  2118. var i TCARD8
  2119. _ = i
  2120. /*
  2121. * When returning FALSE, guarantee that array->data = 0.
  2122. * This allows the user to safely call XdmcpDisposeARRAYofARRAY8(array)
  2123. * regardless of the return value below.
  2124. * Note that XdmcpDisposeARRAY*(array) will call free(array->data),
  2125. * so we must guarantee that array->data is NULL or a malloced pointer.
  2126. */
  2127. if !(XXdmcpReadCARD8(tls, buffer, array) != 0) {
  2128. (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  2129. return m_FALSE
  2130. }
  2131. if !((*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Flength != 0) {
  2132. (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Fdata = libc.UintptrFromInt32(0)
  2133. return int32(m_TRUE)
  2134. }
  2135. (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Fdata = libc.Xmalloc(tls, uint32((*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Flength)*uint32(8))
  2136. if !((*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Fdata != 0) {
  2137. return m_FALSE
  2138. }
  2139. i = uint8(0)
  2140. for {
  2141. if !(libc.Int32FromUint8(i) < libc.Int32FromUint8((*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Flength)) {
  2142. break
  2143. }
  2144. if !(XXdmcpReadARRAY8(tls, buffer, (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Fdata+uintptr(i)*8) != 0) {
  2145. /*
  2146. * We must free all of the arrays allocated thus far in the loop
  2147. * and free array->data and finally set array->data = 0;
  2148. * The easiest way to do this is to reset the length and call
  2149. * XdmcpDisposeARRAYofARRAY8(array).
  2150. */
  2151. (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Flength = i
  2152. XXdmcpDisposeARRAYofARRAY8(tls, array)
  2153. return m_FALSE
  2154. }
  2155. goto _1
  2156. _1:
  2157. ;
  2158. i++
  2159. }
  2160. return int32(m_TRUE)
  2161. }
  2162. func XXdmcpReadCARD8(tls *libc.TLS, buffer TXdmcpBufferPtr, valuep TCARD8Ptr) (r int32) {
  2163. var v1 int32
  2164. var v2 uintptr
  2165. _, _ = v1, v2
  2166. if (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fpointer >= (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fcount {
  2167. return m_FALSE
  2168. }
  2169. v2 = buffer + 8
  2170. v1 = *(*int32)(unsafe.Pointer(v2))
  2171. *(*int32)(unsafe.Pointer(v2))++
  2172. *(*TCARD8)(unsafe.Pointer(valuep)) = *(*TBYTE)(unsafe.Pointer((*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fdata + uintptr(v1)))
  2173. return int32(m_TRUE)
  2174. }
  2175. func XXdmcpReadCARD16(tls *libc.TLS, buffer TXdmcpBufferPtr, valuep TCARD16Ptr) (r int32) {
  2176. bp := tls.Alloc(16)
  2177. defer tls.Free(16)
  2178. var _ /* high at bp+0 */ TCARD8
  2179. var _ /* low at bp+1 */ TCARD8
  2180. if XXdmcpReadCARD8(tls, buffer, bp) != 0 && XXdmcpReadCARD8(tls, buffer, bp+1) != 0 {
  2181. *(*TCARD16)(unsafe.Pointer(valuep)) = libc.Uint16FromInt32(libc.Int32FromUint16(uint16(*(*TCARD8)(unsafe.Pointer(bp))))<<int32(8) | libc.Int32FromUint16(uint16(*(*TCARD8)(unsafe.Pointer(bp + 1)))))
  2182. return int32(m_TRUE)
  2183. }
  2184. return m_FALSE
  2185. }
  2186. func XXdmcpReadCARD32(tls *libc.TLS, buffer TXdmcpBufferPtr, valuep TCARD32Ptr) (r int32) {
  2187. bp := tls.Alloc(16)
  2188. defer tls.Free(16)
  2189. var _ /* byte0 at bp+0 */ TCARD8
  2190. var _ /* byte1 at bp+1 */ TCARD8
  2191. var _ /* byte2 at bp+2 */ TCARD8
  2192. var _ /* byte3 at bp+3 */ TCARD8
  2193. if XXdmcpReadCARD8(tls, buffer, bp) != 0 && XXdmcpReadCARD8(tls, buffer, bp+1) != 0 && XXdmcpReadCARD8(tls, buffer, bp+2) != 0 && XXdmcpReadCARD8(tls, buffer, bp+3) != 0 {
  2194. *(*TCARD32)(unsafe.Pointer(valuep)) = uint32(*(*TCARD8)(unsafe.Pointer(bp)))<<libc.Int32FromInt32(24) | uint32(*(*TCARD8)(unsafe.Pointer(bp + 1)))<<libc.Int32FromInt32(16) | uint32(*(*TCARD8)(unsafe.Pointer(bp + 2)))<<libc.Int32FromInt32(8) | uint32(*(*TCARD8)(unsafe.Pointer(bp + 3)))
  2195. return int32(m_TRUE)
  2196. }
  2197. return m_FALSE
  2198. }
  2199. type Tauth_cblock = [8]uint8
  2200. type Tauth_wrapper_schedule = [16]Tauth_ks_struct
  2201. type Tauth_ks_struct = struct {
  2202. F_1 Tauth_cblock
  2203. }
  2204. func XXdmcpUnwrap(tls *libc.TLS, input uintptr, wrapper uintptr, output uintptr, bytes int32) {
  2205. bp := tls.Alloc(160)
  2206. defer tls.Free(160)
  2207. var i, j, k, v3 int32
  2208. var _ /* blocks at bp+8 */ [2][8]uint8
  2209. var _ /* expand_wrapper at bp+24 */ [8]uint8
  2210. var _ /* schedule at bp+32 */ Tauth_wrapper_schedule
  2211. var _ /* tmp at bp+0 */ [8]uint8
  2212. _, _, _, _ = i, j, k, v3
  2213. X_XdmcpWrapperToOddParity(tls, wrapper, bp+24)
  2214. X_XdmcpAuthSetup(tls, bp+24, bp+32)
  2215. k = 0
  2216. j = 0
  2217. for {
  2218. if !(j < bytes) {
  2219. break
  2220. }
  2221. if bytes-j < int32(8) {
  2222. return
  2223. } /* bad input length */
  2224. i = 0
  2225. for {
  2226. if !(i < int32(8)) {
  2227. break
  2228. }
  2229. *(*uint8)(unsafe.Pointer(bp + 8 + uintptr(k)*8 + uintptr(i))) = *(*uint8)(unsafe.Pointer(input + uintptr(j+i)))
  2230. goto _2
  2231. _2:
  2232. ;
  2233. i++
  2234. }
  2235. X_XdmcpAuthDoIt(tls, input+uintptr(j), bp, bp+32, 0)
  2236. /* block chaining */
  2237. if k == 0 {
  2238. v3 = int32(1)
  2239. } else {
  2240. v3 = 0
  2241. }
  2242. k = v3
  2243. i = 0
  2244. for {
  2245. if !(i < int32(8)) {
  2246. break
  2247. }
  2248. if j == 0 {
  2249. *(*uint8)(unsafe.Pointer(output + uintptr(j+i))) = (*(*[8]uint8)(unsafe.Pointer(bp)))[i]
  2250. } else {
  2251. *(*uint8)(unsafe.Pointer(output + uintptr(j+i))) = libc.Uint8FromInt32(libc.Int32FromUint8((*(*[8]uint8)(unsafe.Pointer(bp)))[i]) ^ libc.Int32FromUint8(*(*uint8)(unsafe.Pointer(bp + 8 + uintptr(k)*8 + uintptr(i)))))
  2252. }
  2253. goto _4
  2254. _4:
  2255. ;
  2256. i++
  2257. }
  2258. goto _1
  2259. _1:
  2260. ;
  2261. j += int32(8)
  2262. }
  2263. }
  2264. func XXdmcpWrap(tls *libc.TLS, input uintptr, wrapper uintptr, output uintptr, bytes int32) {
  2265. bp := tls.Alloc(144)
  2266. defer tls.Free(144)
  2267. var i, j, len1 int32
  2268. var _ /* expand_wrapper at bp+8 */ [8]uint8
  2269. var _ /* schedule at bp+16 */ Tauth_wrapper_schedule
  2270. var _ /* tmp at bp+0 */ [8]uint8
  2271. _, _, _ = i, j, len1
  2272. X_XdmcpWrapperToOddParity(tls, wrapper, bp+8)
  2273. X_XdmcpAuthSetup(tls, bp+8, bp+16)
  2274. j = 0
  2275. for {
  2276. if !(j < bytes) {
  2277. break
  2278. }
  2279. len1 = int32(8)
  2280. if bytes-j < len1 {
  2281. len1 = bytes - j
  2282. }
  2283. /* block chaining */
  2284. i = 0
  2285. for {
  2286. if !(i < len1) {
  2287. break
  2288. }
  2289. if j == 0 {
  2290. (*(*[8]uint8)(unsafe.Pointer(bp)))[i] = *(*uint8)(unsafe.Pointer(input + uintptr(i)))
  2291. } else {
  2292. (*(*[8]uint8)(unsafe.Pointer(bp)))[i] = libc.Uint8FromInt32(libc.Int32FromUint8(*(*uint8)(unsafe.Pointer(input + uintptr(j+i)))) ^ libc.Int32FromUint8(*(*uint8)(unsafe.Pointer(output + uintptr(j-int32(8)+i)))))
  2293. }
  2294. goto _2
  2295. _2:
  2296. ;
  2297. i++
  2298. }
  2299. for {
  2300. if !(i < int32(8)) {
  2301. break
  2302. }
  2303. if j == 0 {
  2304. (*(*[8]uint8)(unsafe.Pointer(bp)))[i] = uint8(0)
  2305. } else {
  2306. (*(*[8]uint8)(unsafe.Pointer(bp)))[i] = libc.Uint8FromInt32(0 ^ libc.Int32FromUint8(*(*uint8)(unsafe.Pointer(output + uintptr(j-int32(8)+i)))))
  2307. }
  2308. goto _3
  2309. _3:
  2310. ;
  2311. i++
  2312. }
  2313. X_XdmcpAuthDoIt(tls, bp, output+uintptr(j), bp+16, int32(1))
  2314. goto _1
  2315. _1:
  2316. ;
  2317. j += int32(8)
  2318. }
  2319. }
  2320. /*
  2321. * Given a 56 bit wrapper in XDMCP format, create a 56
  2322. * bit wrapper in 7-bits + odd parity format
  2323. */
  2324. func _OddParity(tls *libc.TLS, c uint8) (r int32) {
  2325. c = libc.Uint8FromInt32(libc.Int32FromUint8(c) ^ libc.Int32FromUint8(c)>>int32(4))
  2326. c = libc.Uint8FromInt32(libc.Int32FromUint8(c) ^ libc.Int32FromUint8(c)>>int32(2))
  2327. c = libc.Uint8FromInt32(libc.Int32FromUint8(c) ^ libc.Int32FromUint8(c)>>int32(1))
  2328. return ^libc.Int32FromUint8(c) & int32(0x1)
  2329. }
  2330. /*
  2331. * Spread the 56 bit wrapper among 8 bytes, using the upper 7 bits
  2332. * of each byte, and storing an odd parity bit in the low bit
  2333. */
  2334. func X_XdmcpWrapperToOddParity(tls *libc.TLS, in uintptr, out uintptr) {
  2335. var ashift, bshift, i int32
  2336. var c uint8
  2337. _, _, _, _ = ashift, bshift, c, i
  2338. ashift = int32(7)
  2339. bshift = int32(1)
  2340. i = 0
  2341. for {
  2342. if !(i < int32(7)) {
  2343. break
  2344. }
  2345. c = libc.Uint8FromInt32((libc.Int32FromUint8(*(*uint8)(unsafe.Pointer(in + uintptr(i))))<<ashift | libc.Int32FromUint8(*(*uint8)(unsafe.Pointer(in + uintptr(i+int32(1)))))>>bshift) & int32(0x7f))
  2346. *(*uint8)(unsafe.Pointer(out + uintptr(i))) = libc.Uint8FromInt32(libc.Int32FromUint8(c)<<int32(1) | _OddParity(tls, c))
  2347. ashift--
  2348. bshift++
  2349. goto _1
  2350. _1:
  2351. ;
  2352. i++
  2353. }
  2354. c = *(*uint8)(unsafe.Pointer(in + uintptr(i)))
  2355. *(*uint8)(unsafe.Pointer(out + uintptr(i))) = libc.Uint8FromInt32(libc.Int32FromUint8(c)<<int32(1) | _OddParity(tls, c))
  2356. }
  2357. func XXdmcpWriteHeader(tls *libc.TLS, buffer TXdmcpBufferPtr, header TXdmcpHeaderPtr) (r int32) {
  2358. var newData uintptr
  2359. _ = newData
  2360. if (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fsize < int32(6)+libc.Int32FromUint16((*T_XdmcpHeader)(unsafe.Pointer(header)).Flength) {
  2361. newData = libc.Xmalloc(tls, libc.Uint32FromInt32(m_XDM_MAX_MSGLEN)*libc.Uint32FromInt64(1))
  2362. if !(newData != 0) {
  2363. return m_FALSE
  2364. }
  2365. libc.Xfree(tls, (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fdata)
  2366. (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fdata = newData
  2367. (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fsize = int32(m_XDM_MAX_MSGLEN)
  2368. }
  2369. (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fpointer = 0
  2370. if !(XXdmcpWriteCARD16(tls, buffer, uint32((*T_XdmcpHeader)(unsafe.Pointer(header)).Fversion)) != 0) {
  2371. return m_FALSE
  2372. }
  2373. if !(XXdmcpWriteCARD16(tls, buffer, uint32((*T_XdmcpHeader)(unsafe.Pointer(header)).Fopcode)) != 0) {
  2374. return m_FALSE
  2375. }
  2376. if !(XXdmcpWriteCARD16(tls, buffer, uint32((*T_XdmcpHeader)(unsafe.Pointer(header)).Flength)) != 0) {
  2377. return m_FALSE
  2378. }
  2379. return int32(m_TRUE)
  2380. }
  2381. func XXdmcpWriteARRAY8(tls *libc.TLS, buffer TXdmcpBufferPtr, array TARRAY8Ptr) (r int32) {
  2382. var i int32
  2383. _ = i
  2384. if !(XXdmcpWriteCARD16(tls, buffer, uint32((*T_ARRAY8)(unsafe.Pointer(array)).Flength)) != 0) {
  2385. return m_FALSE
  2386. }
  2387. i = 0
  2388. for {
  2389. if !(i < libc.Int32FromUint16((*T_ARRAY8)(unsafe.Pointer(array)).Flength)) {
  2390. break
  2391. }
  2392. if !(XXdmcpWriteCARD8(tls, buffer, uint32(*(*TCARD8)(unsafe.Pointer((*T_ARRAY8)(unsafe.Pointer(array)).Fdata + uintptr(i))))) != 0) {
  2393. return m_FALSE
  2394. }
  2395. goto _1
  2396. _1:
  2397. ;
  2398. i++
  2399. }
  2400. return int32(m_TRUE)
  2401. }
  2402. func XXdmcpWriteARRAY16(tls *libc.TLS, buffer TXdmcpBufferPtr, array TARRAY16Ptr) (r int32) {
  2403. var i int32
  2404. _ = i
  2405. if !(XXdmcpWriteCARD8(tls, buffer, uint32((*T_ARRAY16)(unsafe.Pointer(array)).Flength)) != 0) {
  2406. return m_FALSE
  2407. }
  2408. i = 0
  2409. for {
  2410. if !(i < libc.Int32FromUint8((*T_ARRAY16)(unsafe.Pointer(array)).Flength)) {
  2411. break
  2412. }
  2413. if !(XXdmcpWriteCARD16(tls, buffer, uint32(*(*TCARD16)(unsafe.Pointer((*T_ARRAY16)(unsafe.Pointer(array)).Fdata + uintptr(i)*2)))) != 0) {
  2414. return m_FALSE
  2415. }
  2416. goto _1
  2417. _1:
  2418. ;
  2419. i++
  2420. }
  2421. return int32(m_TRUE)
  2422. }
  2423. func XXdmcpWriteARRAY32(tls *libc.TLS, buffer TXdmcpBufferPtr, array TARRAY32Ptr) (r int32) {
  2424. var i int32
  2425. _ = i
  2426. if !(XXdmcpWriteCARD8(tls, buffer, uint32((*T_ARRAY32)(unsafe.Pointer(array)).Flength)) != 0) {
  2427. return m_FALSE
  2428. }
  2429. i = 0
  2430. for {
  2431. if !(i < libc.Int32FromUint8((*T_ARRAY32)(unsafe.Pointer(array)).Flength)) {
  2432. break
  2433. }
  2434. if !(XXdmcpWriteCARD32(tls, buffer, *(*TCARD32)(unsafe.Pointer((*T_ARRAY32)(unsafe.Pointer(array)).Fdata + uintptr(i)*4))) != 0) {
  2435. return m_FALSE
  2436. }
  2437. goto _1
  2438. _1:
  2439. ;
  2440. i++
  2441. }
  2442. return int32(m_TRUE)
  2443. }
  2444. func XXdmcpWriteARRAYofARRAY8(tls *libc.TLS, buffer TXdmcpBufferPtr, array TARRAYofARRAY8Ptr) (r int32) {
  2445. var i int32
  2446. _ = i
  2447. if !(XXdmcpWriteCARD8(tls, buffer, uint32((*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Flength)) != 0) {
  2448. return m_FALSE
  2449. }
  2450. i = 0
  2451. for {
  2452. if !(i < libc.Int32FromUint8((*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Flength)) {
  2453. break
  2454. }
  2455. if !(XXdmcpWriteARRAY8(tls, buffer, (*T_ARRAYofARRAY8)(unsafe.Pointer(array)).Fdata+uintptr(i)*8) != 0) {
  2456. return m_FALSE
  2457. }
  2458. goto _1
  2459. _1:
  2460. ;
  2461. i++
  2462. }
  2463. return int32(m_TRUE)
  2464. }
  2465. func XXdmcpWriteCARD8(tls *libc.TLS, buffer TXdmcpBufferPtr, value uint32) (r int32) {
  2466. var v1 int32
  2467. var v2 uintptr
  2468. _, _ = v1, v2
  2469. if (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fpointer >= (*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fsize {
  2470. return m_FALSE
  2471. }
  2472. v2 = buffer + 8
  2473. v1 = *(*int32)(unsafe.Pointer(v2))
  2474. *(*int32)(unsafe.Pointer(v2))++
  2475. *(*TBYTE)(unsafe.Pointer((*T_XdmcpBuffer)(unsafe.Pointer(buffer)).Fdata + uintptr(v1))) = uint8(value)
  2476. return int32(m_TRUE)
  2477. }
  2478. func XXdmcpWriteCARD16(tls *libc.TLS, buffer TXdmcpBufferPtr, value uint32) (r int32) {
  2479. if !(XXdmcpWriteCARD8(tls, buffer, value>>int32(8)) != 0) {
  2480. return m_FALSE
  2481. }
  2482. if !(XXdmcpWriteCARD8(tls, buffer, value&uint32(0xff)) != 0) {
  2483. return m_FALSE
  2484. }
  2485. return int32(m_TRUE)
  2486. }
  2487. func XXdmcpWriteCARD32(tls *libc.TLS, buffer TXdmcpBufferPtr, value uint32) (r int32) {
  2488. if !(XXdmcpWriteCARD8(tls, buffer, value>>int32(24)) != 0) {
  2489. return m_FALSE
  2490. }
  2491. if !(XXdmcpWriteCARD8(tls, buffer, value>>int32(16)&uint32(0xff)) != 0) {
  2492. return m_FALSE
  2493. }
  2494. if !(XXdmcpWriteCARD8(tls, buffer, value>>int32(8)&uint32(0xff)) != 0) {
  2495. return m_FALSE
  2496. }
  2497. if !(XXdmcpWriteCARD8(tls, buffer, value&uint32(0xff)) != 0) {
  2498. return m_FALSE
  2499. }
  2500. return int32(m_TRUE)
  2501. }
  2502. const m_HALF_ITERATIONS = 8
  2503. const m_ITERATIONS = 16
  2504. /* des routines for non-usa - eay 10/9/1991 eay@psych.psy.uq.oz.au
  2505. * These routines were written for speed not size so they are bigger than
  2506. * needed. I have removed some of the loop unrolling, this will reduce
  2507. * code size at the expense of some speed.
  2508. * 25/9/1991 eay - much faster _XdmcpAuthSetup (4 times faster).
  2509. * 19/9/1991 eay - cleaned up the IP and FP code.
  2510. * 10/9/1991 eay - first release.
  2511. * The des routines this file has been made from can be found in
  2512. * ftp.psy.uq.oz.au /pub/DES
  2513. * This particular version derived from OpenBSD Revsion 1.3.
  2514. */
  2515. /*
  2516. *
  2517. * Export Requirements.
  2518. * You may not export or re-export this software or any copy or
  2519. * adaptation in violation of any applicable laws or regulations.
  2520. *
  2521. * Without limiting the generality of the foregoing, hardware, software,
  2522. * technology or services provided under this license agreement may not
  2523. * be exported, reexported, transferred or downloaded to or within (or to
  2524. * a national resident of) countries under U.S. economic embargo
  2525. * including the following countries:
  2526. *
  2527. * Cuba, Iran, Libya, North Korea, Sudan and Syria. This list is subject
  2528. * to change.
  2529. *
  2530. * Hardware, software, technology or services may not be exported,
  2531. * reexported, transferred or downloaded to persons or entities listed on
  2532. * the U.S. Department of Commerce Denied Persons List, Entity List of
  2533. * proliferation concern or on any U.S. Treasury Department Designated
  2534. * Nationals exclusion list, or to parties directly or indirectly
  2535. * involved in the development or production of nuclear, chemical,
  2536. * biological weapons or in missile technology programs as specified in
  2537. * the U.S. Export Administration Regulations (15 CFR 744).
  2538. *
  2539. * By accepting this license agreement you confirm that you are not
  2540. * located in (or a national resident of) any country under U.S. economic
  2541. * embargo, not identified on any U.S. Department of Commerce Denied
  2542. * Persons List, Entity List or Treasury Department Designated Nationals
  2543. * exclusion list, and not directly or indirectly involved in the
  2544. * development or production of nuclear, chemical, biological weapons or
  2545. * in missile technology programs as specified in the U.S. Export
  2546. * Administration Regulations.
  2547. *
  2548. *
  2549. * Local Country Import Requirements. The software you are about to
  2550. * download contains cryptography technology. Some countries regulate the
  2551. * import, use and/or export of certain products with cryptography. The
  2552. * X.org Foundation makes no claims as to the applicability of local
  2553. * country import, use and/or export regulations in relation to the
  2554. * download of this product. If you are located outside the U.S. and
  2555. * Canada you are advised to consult your local country regulations to
  2556. * insure compliance.
  2557. */
  2558. var _skb = [8][64]TCARD32{
  2559. 0: {
  2560. 1: uint32(0x00000010),
  2561. 2: uint32(0x20000000),
  2562. 3: uint32(0x20000010),
  2563. 4: uint32(0x00010000),
  2564. 5: uint32(0x00010010),
  2565. 6: uint32(0x20010000),
  2566. 7: uint32(0x20010010),
  2567. 8: uint32(0x00000800),
  2568. 9: uint32(0x00000810),
  2569. 10: uint32(0x20000800),
  2570. 11: uint32(0x20000810),
  2571. 12: uint32(0x00010800),
  2572. 13: uint32(0x00010810),
  2573. 14: uint32(0x20010800),
  2574. 15: uint32(0x20010810),
  2575. 16: uint32(0x00000020),
  2576. 17: uint32(0x00000030),
  2577. 18: uint32(0x20000020),
  2578. 19: uint32(0x20000030),
  2579. 20: uint32(0x00010020),
  2580. 21: uint32(0x00010030),
  2581. 22: uint32(0x20010020),
  2582. 23: uint32(0x20010030),
  2583. 24: uint32(0x00000820),
  2584. 25: uint32(0x00000830),
  2585. 26: uint32(0x20000820),
  2586. 27: uint32(0x20000830),
  2587. 28: uint32(0x00010820),
  2588. 29: uint32(0x00010830),
  2589. 30: uint32(0x20010820),
  2590. 31: uint32(0x20010830),
  2591. 32: uint32(0x00080000),
  2592. 33: uint32(0x00080010),
  2593. 34: uint32(0x20080000),
  2594. 35: uint32(0x20080010),
  2595. 36: uint32(0x00090000),
  2596. 37: uint32(0x00090010),
  2597. 38: uint32(0x20090000),
  2598. 39: uint32(0x20090010),
  2599. 40: uint32(0x00080800),
  2600. 41: uint32(0x00080810),
  2601. 42: uint32(0x20080800),
  2602. 43: uint32(0x20080810),
  2603. 44: uint32(0x00090800),
  2604. 45: uint32(0x00090810),
  2605. 46: uint32(0x20090800),
  2606. 47: uint32(0x20090810),
  2607. 48: uint32(0x00080020),
  2608. 49: uint32(0x00080030),
  2609. 50: uint32(0x20080020),
  2610. 51: uint32(0x20080030),
  2611. 52: uint32(0x00090020),
  2612. 53: uint32(0x00090030),
  2613. 54: uint32(0x20090020),
  2614. 55: uint32(0x20090030),
  2615. 56: uint32(0x00080820),
  2616. 57: uint32(0x00080830),
  2617. 58: uint32(0x20080820),
  2618. 59: uint32(0x20080830),
  2619. 60: uint32(0x00090820),
  2620. 61: uint32(0x00090830),
  2621. 62: uint32(0x20090820),
  2622. 63: uint32(0x20090830),
  2623. },
  2624. 1: {
  2625. 1: uint32(0x02000000),
  2626. 2: uint32(0x00002000),
  2627. 3: uint32(0x02002000),
  2628. 4: uint32(0x00200000),
  2629. 5: uint32(0x02200000),
  2630. 6: uint32(0x00202000),
  2631. 7: uint32(0x02202000),
  2632. 8: uint32(0x00000004),
  2633. 9: uint32(0x02000004),
  2634. 10: uint32(0x00002004),
  2635. 11: uint32(0x02002004),
  2636. 12: uint32(0x00200004),
  2637. 13: uint32(0x02200004),
  2638. 14: uint32(0x00202004),
  2639. 15: uint32(0x02202004),
  2640. 16: uint32(0x00000400),
  2641. 17: uint32(0x02000400),
  2642. 18: uint32(0x00002400),
  2643. 19: uint32(0x02002400),
  2644. 20: uint32(0x00200400),
  2645. 21: uint32(0x02200400),
  2646. 22: uint32(0x00202400),
  2647. 23: uint32(0x02202400),
  2648. 24: uint32(0x00000404),
  2649. 25: uint32(0x02000404),
  2650. 26: uint32(0x00002404),
  2651. 27: uint32(0x02002404),
  2652. 28: uint32(0x00200404),
  2653. 29: uint32(0x02200404),
  2654. 30: uint32(0x00202404),
  2655. 31: uint32(0x02202404),
  2656. 32: uint32(0x10000000),
  2657. 33: uint32(0x12000000),
  2658. 34: uint32(0x10002000),
  2659. 35: uint32(0x12002000),
  2660. 36: uint32(0x10200000),
  2661. 37: uint32(0x12200000),
  2662. 38: uint32(0x10202000),
  2663. 39: uint32(0x12202000),
  2664. 40: uint32(0x10000004),
  2665. 41: uint32(0x12000004),
  2666. 42: uint32(0x10002004),
  2667. 43: uint32(0x12002004),
  2668. 44: uint32(0x10200004),
  2669. 45: uint32(0x12200004),
  2670. 46: uint32(0x10202004),
  2671. 47: uint32(0x12202004),
  2672. 48: uint32(0x10000400),
  2673. 49: uint32(0x12000400),
  2674. 50: uint32(0x10002400),
  2675. 51: uint32(0x12002400),
  2676. 52: uint32(0x10200400),
  2677. 53: uint32(0x12200400),
  2678. 54: uint32(0x10202400),
  2679. 55: uint32(0x12202400),
  2680. 56: uint32(0x10000404),
  2681. 57: uint32(0x12000404),
  2682. 58: uint32(0x10002404),
  2683. 59: uint32(0x12002404),
  2684. 60: uint32(0x10200404),
  2685. 61: uint32(0x12200404),
  2686. 62: uint32(0x10202404),
  2687. 63: uint32(0x12202404),
  2688. },
  2689. 2: {
  2690. 1: uint32(0x00000001),
  2691. 2: uint32(0x00040000),
  2692. 3: uint32(0x00040001),
  2693. 4: uint32(0x01000000),
  2694. 5: uint32(0x01000001),
  2695. 6: uint32(0x01040000),
  2696. 7: uint32(0x01040001),
  2697. 8: uint32(0x00000002),
  2698. 9: uint32(0x00000003),
  2699. 10: uint32(0x00040002),
  2700. 11: uint32(0x00040003),
  2701. 12: uint32(0x01000002),
  2702. 13: uint32(0x01000003),
  2703. 14: uint32(0x01040002),
  2704. 15: uint32(0x01040003),
  2705. 16: uint32(0x00000200),
  2706. 17: uint32(0x00000201),
  2707. 18: uint32(0x00040200),
  2708. 19: uint32(0x00040201),
  2709. 20: uint32(0x01000200),
  2710. 21: uint32(0x01000201),
  2711. 22: uint32(0x01040200),
  2712. 23: uint32(0x01040201),
  2713. 24: uint32(0x00000202),
  2714. 25: uint32(0x00000203),
  2715. 26: uint32(0x00040202),
  2716. 27: uint32(0x00040203),
  2717. 28: uint32(0x01000202),
  2718. 29: uint32(0x01000203),
  2719. 30: uint32(0x01040202),
  2720. 31: uint32(0x01040203),
  2721. 32: uint32(0x08000000),
  2722. 33: uint32(0x08000001),
  2723. 34: uint32(0x08040000),
  2724. 35: uint32(0x08040001),
  2725. 36: uint32(0x09000000),
  2726. 37: uint32(0x09000001),
  2727. 38: uint32(0x09040000),
  2728. 39: uint32(0x09040001),
  2729. 40: uint32(0x08000002),
  2730. 41: uint32(0x08000003),
  2731. 42: uint32(0x08040002),
  2732. 43: uint32(0x08040003),
  2733. 44: uint32(0x09000002),
  2734. 45: uint32(0x09000003),
  2735. 46: uint32(0x09040002),
  2736. 47: uint32(0x09040003),
  2737. 48: uint32(0x08000200),
  2738. 49: uint32(0x08000201),
  2739. 50: uint32(0x08040200),
  2740. 51: uint32(0x08040201),
  2741. 52: uint32(0x09000200),
  2742. 53: uint32(0x09000201),
  2743. 54: uint32(0x09040200),
  2744. 55: uint32(0x09040201),
  2745. 56: uint32(0x08000202),
  2746. 57: uint32(0x08000203),
  2747. 58: uint32(0x08040202),
  2748. 59: uint32(0x08040203),
  2749. 60: uint32(0x09000202),
  2750. 61: uint32(0x09000203),
  2751. 62: uint32(0x09040202),
  2752. 63: uint32(0x09040203),
  2753. },
  2754. 3: {
  2755. 1: uint32(0x00100000),
  2756. 2: uint32(0x00000100),
  2757. 3: uint32(0x00100100),
  2758. 4: uint32(0x00000008),
  2759. 5: uint32(0x00100008),
  2760. 6: uint32(0x00000108),
  2761. 7: uint32(0x00100108),
  2762. 8: uint32(0x00001000),
  2763. 9: uint32(0x00101000),
  2764. 10: uint32(0x00001100),
  2765. 11: uint32(0x00101100),
  2766. 12: uint32(0x00001008),
  2767. 13: uint32(0x00101008),
  2768. 14: uint32(0x00001108),
  2769. 15: uint32(0x00101108),
  2770. 16: uint32(0x04000000),
  2771. 17: uint32(0x04100000),
  2772. 18: uint32(0x04000100),
  2773. 19: uint32(0x04100100),
  2774. 20: uint32(0x04000008),
  2775. 21: uint32(0x04100008),
  2776. 22: uint32(0x04000108),
  2777. 23: uint32(0x04100108),
  2778. 24: uint32(0x04001000),
  2779. 25: uint32(0x04101000),
  2780. 26: uint32(0x04001100),
  2781. 27: uint32(0x04101100),
  2782. 28: uint32(0x04001008),
  2783. 29: uint32(0x04101008),
  2784. 30: uint32(0x04001108),
  2785. 31: uint32(0x04101108),
  2786. 32: uint32(0x00020000),
  2787. 33: uint32(0x00120000),
  2788. 34: uint32(0x00020100),
  2789. 35: uint32(0x00120100),
  2790. 36: uint32(0x00020008),
  2791. 37: uint32(0x00120008),
  2792. 38: uint32(0x00020108),
  2793. 39: uint32(0x00120108),
  2794. 40: uint32(0x00021000),
  2795. 41: uint32(0x00121000),
  2796. 42: uint32(0x00021100),
  2797. 43: uint32(0x00121100),
  2798. 44: uint32(0x00021008),
  2799. 45: uint32(0x00121008),
  2800. 46: uint32(0x00021108),
  2801. 47: uint32(0x00121108),
  2802. 48: uint32(0x04020000),
  2803. 49: uint32(0x04120000),
  2804. 50: uint32(0x04020100),
  2805. 51: uint32(0x04120100),
  2806. 52: uint32(0x04020008),
  2807. 53: uint32(0x04120008),
  2808. 54: uint32(0x04020108),
  2809. 55: uint32(0x04120108),
  2810. 56: uint32(0x04021000),
  2811. 57: uint32(0x04121000),
  2812. 58: uint32(0x04021100),
  2813. 59: uint32(0x04121100),
  2814. 60: uint32(0x04021008),
  2815. 61: uint32(0x04121008),
  2816. 62: uint32(0x04021108),
  2817. 63: uint32(0x04121108),
  2818. },
  2819. 4: {
  2820. 1: uint32(0x10000000),
  2821. 2: uint32(0x00010000),
  2822. 3: uint32(0x10010000),
  2823. 4: uint32(0x00000004),
  2824. 5: uint32(0x10000004),
  2825. 6: uint32(0x00010004),
  2826. 7: uint32(0x10010004),
  2827. 8: uint32(0x20000000),
  2828. 9: uint32(0x30000000),
  2829. 10: uint32(0x20010000),
  2830. 11: uint32(0x30010000),
  2831. 12: uint32(0x20000004),
  2832. 13: uint32(0x30000004),
  2833. 14: uint32(0x20010004),
  2834. 15: uint32(0x30010004),
  2835. 16: uint32(0x00100000),
  2836. 17: uint32(0x10100000),
  2837. 18: uint32(0x00110000),
  2838. 19: uint32(0x10110000),
  2839. 20: uint32(0x00100004),
  2840. 21: uint32(0x10100004),
  2841. 22: uint32(0x00110004),
  2842. 23: uint32(0x10110004),
  2843. 24: uint32(0x20100000),
  2844. 25: uint32(0x30100000),
  2845. 26: uint32(0x20110000),
  2846. 27: uint32(0x30110000),
  2847. 28: uint32(0x20100004),
  2848. 29: uint32(0x30100004),
  2849. 30: uint32(0x20110004),
  2850. 31: uint32(0x30110004),
  2851. 32: uint32(0x00001000),
  2852. 33: uint32(0x10001000),
  2853. 34: uint32(0x00011000),
  2854. 35: uint32(0x10011000),
  2855. 36: uint32(0x00001004),
  2856. 37: uint32(0x10001004),
  2857. 38: uint32(0x00011004),
  2858. 39: uint32(0x10011004),
  2859. 40: uint32(0x20001000),
  2860. 41: uint32(0x30001000),
  2861. 42: uint32(0x20011000),
  2862. 43: uint32(0x30011000),
  2863. 44: uint32(0x20001004),
  2864. 45: uint32(0x30001004),
  2865. 46: uint32(0x20011004),
  2866. 47: uint32(0x30011004),
  2867. 48: uint32(0x00101000),
  2868. 49: uint32(0x10101000),
  2869. 50: uint32(0x00111000),
  2870. 51: uint32(0x10111000),
  2871. 52: uint32(0x00101004),
  2872. 53: uint32(0x10101004),
  2873. 54: uint32(0x00111004),
  2874. 55: uint32(0x10111004),
  2875. 56: uint32(0x20101000),
  2876. 57: uint32(0x30101000),
  2877. 58: uint32(0x20111000),
  2878. 59: uint32(0x30111000),
  2879. 60: uint32(0x20101004),
  2880. 61: uint32(0x30101004),
  2881. 62: uint32(0x20111004),
  2882. 63: uint32(0x30111004),
  2883. },
  2884. 5: {
  2885. 1: uint32(0x08000000),
  2886. 2: uint32(0x00000008),
  2887. 3: uint32(0x08000008),
  2888. 4: uint32(0x00000400),
  2889. 5: uint32(0x08000400),
  2890. 6: uint32(0x00000408),
  2891. 7: uint32(0x08000408),
  2892. 8: uint32(0x00020000),
  2893. 9: uint32(0x08020000),
  2894. 10: uint32(0x00020008),
  2895. 11: uint32(0x08020008),
  2896. 12: uint32(0x00020400),
  2897. 13: uint32(0x08020400),
  2898. 14: uint32(0x00020408),
  2899. 15: uint32(0x08020408),
  2900. 16: uint32(0x00000001),
  2901. 17: uint32(0x08000001),
  2902. 18: uint32(0x00000009),
  2903. 19: uint32(0x08000009),
  2904. 20: uint32(0x00000401),
  2905. 21: uint32(0x08000401),
  2906. 22: uint32(0x00000409),
  2907. 23: uint32(0x08000409),
  2908. 24: uint32(0x00020001),
  2909. 25: uint32(0x08020001),
  2910. 26: uint32(0x00020009),
  2911. 27: uint32(0x08020009),
  2912. 28: uint32(0x00020401),
  2913. 29: uint32(0x08020401),
  2914. 30: uint32(0x00020409),
  2915. 31: uint32(0x08020409),
  2916. 32: uint32(0x02000000),
  2917. 33: uint32(0x0A000000),
  2918. 34: uint32(0x02000008),
  2919. 35: uint32(0x0A000008),
  2920. 36: uint32(0x02000400),
  2921. 37: uint32(0x0A000400),
  2922. 38: uint32(0x02000408),
  2923. 39: uint32(0x0A000408),
  2924. 40: uint32(0x02020000),
  2925. 41: uint32(0x0A020000),
  2926. 42: uint32(0x02020008),
  2927. 43: uint32(0x0A020008),
  2928. 44: uint32(0x02020400),
  2929. 45: uint32(0x0A020400),
  2930. 46: uint32(0x02020408),
  2931. 47: uint32(0x0A020408),
  2932. 48: uint32(0x02000001),
  2933. 49: uint32(0x0A000001),
  2934. 50: uint32(0x02000009),
  2935. 51: uint32(0x0A000009),
  2936. 52: uint32(0x02000401),
  2937. 53: uint32(0x0A000401),
  2938. 54: uint32(0x02000409),
  2939. 55: uint32(0x0A000409),
  2940. 56: uint32(0x02020001),
  2941. 57: uint32(0x0A020001),
  2942. 58: uint32(0x02020009),
  2943. 59: uint32(0x0A020009),
  2944. 60: uint32(0x02020401),
  2945. 61: uint32(0x0A020401),
  2946. 62: uint32(0x02020409),
  2947. 63: uint32(0x0A020409),
  2948. },
  2949. 6: {
  2950. 1: uint32(0x00000100),
  2951. 2: uint32(0x00080000),
  2952. 3: uint32(0x00080100),
  2953. 4: uint32(0x01000000),
  2954. 5: uint32(0x01000100),
  2955. 6: uint32(0x01080000),
  2956. 7: uint32(0x01080100),
  2957. 8: uint32(0x00000010),
  2958. 9: uint32(0x00000110),
  2959. 10: uint32(0x00080010),
  2960. 11: uint32(0x00080110),
  2961. 12: uint32(0x01000010),
  2962. 13: uint32(0x01000110),
  2963. 14: uint32(0x01080010),
  2964. 15: uint32(0x01080110),
  2965. 16: uint32(0x00200000),
  2966. 17: uint32(0x00200100),
  2967. 18: uint32(0x00280000),
  2968. 19: uint32(0x00280100),
  2969. 20: uint32(0x01200000),
  2970. 21: uint32(0x01200100),
  2971. 22: uint32(0x01280000),
  2972. 23: uint32(0x01280100),
  2973. 24: uint32(0x00200010),
  2974. 25: uint32(0x00200110),
  2975. 26: uint32(0x00280010),
  2976. 27: uint32(0x00280110),
  2977. 28: uint32(0x01200010),
  2978. 29: uint32(0x01200110),
  2979. 30: uint32(0x01280010),
  2980. 31: uint32(0x01280110),
  2981. 32: uint32(0x00000200),
  2982. 33: uint32(0x00000300),
  2983. 34: uint32(0x00080200),
  2984. 35: uint32(0x00080300),
  2985. 36: uint32(0x01000200),
  2986. 37: uint32(0x01000300),
  2987. 38: uint32(0x01080200),
  2988. 39: uint32(0x01080300),
  2989. 40: uint32(0x00000210),
  2990. 41: uint32(0x00000310),
  2991. 42: uint32(0x00080210),
  2992. 43: uint32(0x00080310),
  2993. 44: uint32(0x01000210),
  2994. 45: uint32(0x01000310),
  2995. 46: uint32(0x01080210),
  2996. 47: uint32(0x01080310),
  2997. 48: uint32(0x00200200),
  2998. 49: uint32(0x00200300),
  2999. 50: uint32(0x00280200),
  3000. 51: uint32(0x00280300),
  3001. 52: uint32(0x01200200),
  3002. 53: uint32(0x01200300),
  3003. 54: uint32(0x01280200),
  3004. 55: uint32(0x01280300),
  3005. 56: uint32(0x00200210),
  3006. 57: uint32(0x00200310),
  3007. 58: uint32(0x00280210),
  3008. 59: uint32(0x00280310),
  3009. 60: uint32(0x01200210),
  3010. 61: uint32(0x01200310),
  3011. 62: uint32(0x01280210),
  3012. 63: uint32(0x01280310),
  3013. },
  3014. 7: {
  3015. 1: uint32(0x04000000),
  3016. 2: uint32(0x00040000),
  3017. 3: uint32(0x04040000),
  3018. 4: uint32(0x00000002),
  3019. 5: uint32(0x04000002),
  3020. 6: uint32(0x00040002),
  3021. 7: uint32(0x04040002),
  3022. 8: uint32(0x00002000),
  3023. 9: uint32(0x04002000),
  3024. 10: uint32(0x00042000),
  3025. 11: uint32(0x04042000),
  3026. 12: uint32(0x00002002),
  3027. 13: uint32(0x04002002),
  3028. 14: uint32(0x00042002),
  3029. 15: uint32(0x04042002),
  3030. 16: uint32(0x00000020),
  3031. 17: uint32(0x04000020),
  3032. 18: uint32(0x00040020),
  3033. 19: uint32(0x04040020),
  3034. 20: uint32(0x00000022),
  3035. 21: uint32(0x04000022),
  3036. 22: uint32(0x00040022),
  3037. 23: uint32(0x04040022),
  3038. 24: uint32(0x00002020),
  3039. 25: uint32(0x04002020),
  3040. 26: uint32(0x00042020),
  3041. 27: uint32(0x04042020),
  3042. 28: uint32(0x00002022),
  3043. 29: uint32(0x04002022),
  3044. 30: uint32(0x00042022),
  3045. 31: uint32(0x04042022),
  3046. 32: uint32(0x00000800),
  3047. 33: uint32(0x04000800),
  3048. 34: uint32(0x00040800),
  3049. 35: uint32(0x04040800),
  3050. 36: uint32(0x00000802),
  3051. 37: uint32(0x04000802),
  3052. 38: uint32(0x00040802),
  3053. 39: uint32(0x04040802),
  3054. 40: uint32(0x00002800),
  3055. 41: uint32(0x04002800),
  3056. 42: uint32(0x00042800),
  3057. 43: uint32(0x04042800),
  3058. 44: uint32(0x00002802),
  3059. 45: uint32(0x04002802),
  3060. 46: uint32(0x00042802),
  3061. 47: uint32(0x04042802),
  3062. 48: uint32(0x00000820),
  3063. 49: uint32(0x04000820),
  3064. 50: uint32(0x00040820),
  3065. 51: uint32(0x04040820),
  3066. 52: uint32(0x00000822),
  3067. 53: uint32(0x04000822),
  3068. 54: uint32(0x00040822),
  3069. 55: uint32(0x04040822),
  3070. 56: uint32(0x00002820),
  3071. 57: uint32(0x04002820),
  3072. 58: uint32(0x00042820),
  3073. 59: uint32(0x04042820),
  3074. 60: uint32(0x00002822),
  3075. 61: uint32(0x04002822),
  3076. 62: uint32(0x00042822),
  3077. 63: uint32(0x04042822),
  3078. },
  3079. }
  3080. var _SPtrans = [8][64]TCARD32{
  3081. 0: {
  3082. 0: uint32(0x00410100),
  3083. 1: uint32(0x00010000),
  3084. 2: uint32(0x40400000),
  3085. 3: uint32(0x40410100),
  3086. 4: uint32(0x00400000),
  3087. 5: uint32(0x40010100),
  3088. 6: uint32(0x40010000),
  3089. 7: uint32(0x40400000),
  3090. 8: uint32(0x40010100),
  3091. 9: uint32(0x00410100),
  3092. 10: uint32(0x00410000),
  3093. 11: uint32(0x40000100),
  3094. 12: uint32(0x40400100),
  3095. 13: uint32(0x00400000),
  3096. 15: uint32(0x40010000),
  3097. 16: uint32(0x00010000),
  3098. 17: uint32(0x40000000),
  3099. 18: uint32(0x00400100),
  3100. 19: uint32(0x00010100),
  3101. 20: uint32(0x40410100),
  3102. 21: uint32(0x00410000),
  3103. 22: uint32(0x40000100),
  3104. 23: uint32(0x00400100),
  3105. 24: uint32(0x40000000),
  3106. 25: uint32(0x00000100),
  3107. 26: uint32(0x00010100),
  3108. 27: uint32(0x40410000),
  3109. 28: uint32(0x00000100),
  3110. 29: uint32(0x40400100),
  3111. 30: uint32(0x40410000),
  3112. 33: uint32(0x40410100),
  3113. 34: uint32(0x00400100),
  3114. 35: uint32(0x40010000),
  3115. 36: uint32(0x00410100),
  3116. 37: uint32(0x00010000),
  3117. 38: uint32(0x40000100),
  3118. 39: uint32(0x00400100),
  3119. 40: uint32(0x40410000),
  3120. 41: uint32(0x00000100),
  3121. 42: uint32(0x00010100),
  3122. 43: uint32(0x40400000),
  3123. 44: uint32(0x40010100),
  3124. 45: uint32(0x40000000),
  3125. 46: uint32(0x40400000),
  3126. 47: uint32(0x00410000),
  3127. 48: uint32(0x40410100),
  3128. 49: uint32(0x00010100),
  3129. 50: uint32(0x00410000),
  3130. 51: uint32(0x40400100),
  3131. 52: uint32(0x00400000),
  3132. 53: uint32(0x40000100),
  3133. 54: uint32(0x40010000),
  3134. 56: uint32(0x00010000),
  3135. 57: uint32(0x00400000),
  3136. 58: uint32(0x40400100),
  3137. 59: uint32(0x00410100),
  3138. 60: uint32(0x40000000),
  3139. 61: uint32(0x40410000),
  3140. 62: uint32(0x00000100),
  3141. 63: uint32(0x40010100),
  3142. },
  3143. 1: {
  3144. 0: uint32(0x08021002),
  3145. 2: uint32(0x00021000),
  3146. 3: uint32(0x08020000),
  3147. 4: uint32(0x08000002),
  3148. 5: uint32(0x00001002),
  3149. 6: uint32(0x08001000),
  3150. 7: uint32(0x00021000),
  3151. 8: uint32(0x00001000),
  3152. 9: uint32(0x08020002),
  3153. 10: uint32(0x00000002),
  3154. 11: uint32(0x08001000),
  3155. 12: uint32(0x00020002),
  3156. 13: uint32(0x08021000),
  3157. 14: uint32(0x08020000),
  3158. 15: uint32(0x00000002),
  3159. 16: uint32(0x00020000),
  3160. 17: uint32(0x08001002),
  3161. 18: uint32(0x08020002),
  3162. 19: uint32(0x00001000),
  3163. 20: uint32(0x00021002),
  3164. 21: uint32(0x08000000),
  3165. 23: uint32(0x00020002),
  3166. 24: uint32(0x08001002),
  3167. 25: uint32(0x00021002),
  3168. 26: uint32(0x08021000),
  3169. 27: uint32(0x08000002),
  3170. 28: uint32(0x08000000),
  3171. 29: uint32(0x00020000),
  3172. 30: uint32(0x00001002),
  3173. 31: uint32(0x08021002),
  3174. 32: uint32(0x00020002),
  3175. 33: uint32(0x08021000),
  3176. 34: uint32(0x08001000),
  3177. 35: uint32(0x00021002),
  3178. 36: uint32(0x08021002),
  3179. 37: uint32(0x00020002),
  3180. 38: uint32(0x08000002),
  3181. 40: uint32(0x08000000),
  3182. 41: uint32(0x00001002),
  3183. 42: uint32(0x00020000),
  3184. 43: uint32(0x08020002),
  3185. 44: uint32(0x00001000),
  3186. 45: uint32(0x08000000),
  3187. 46: uint32(0x00021002),
  3188. 47: uint32(0x08001002),
  3189. 48: uint32(0x08021000),
  3190. 49: uint32(0x00001000),
  3191. 51: uint32(0x08000002),
  3192. 52: uint32(0x00000002),
  3193. 53: uint32(0x08021002),
  3194. 54: uint32(0x00021000),
  3195. 55: uint32(0x08020000),
  3196. 56: uint32(0x08020002),
  3197. 57: uint32(0x00020000),
  3198. 58: uint32(0x00001002),
  3199. 59: uint32(0x08001000),
  3200. 60: uint32(0x08001002),
  3201. 61: uint32(0x00000002),
  3202. 62: uint32(0x08020000),
  3203. 63: uint32(0x00021000),
  3204. },
  3205. 2: {
  3206. 0: uint32(0x20800000),
  3207. 1: uint32(0x00808020),
  3208. 2: uint32(0x00000020),
  3209. 3: uint32(0x20800020),
  3210. 4: uint32(0x20008000),
  3211. 5: uint32(0x00800000),
  3212. 6: uint32(0x20800020),
  3213. 7: uint32(0x00008020),
  3214. 8: uint32(0x00800020),
  3215. 9: uint32(0x00008000),
  3216. 10: uint32(0x00808000),
  3217. 11: uint32(0x20000000),
  3218. 12: uint32(0x20808020),
  3219. 13: uint32(0x20000020),
  3220. 14: uint32(0x20000000),
  3221. 15: uint32(0x20808000),
  3222. 17: uint32(0x20008000),
  3223. 18: uint32(0x00808020),
  3224. 19: uint32(0x00000020),
  3225. 20: uint32(0x20000020),
  3226. 21: uint32(0x20808020),
  3227. 22: uint32(0x00008000),
  3228. 23: uint32(0x20800000),
  3229. 24: uint32(0x20808000),
  3230. 25: uint32(0x00800020),
  3231. 26: uint32(0x20008020),
  3232. 27: uint32(0x00808000),
  3233. 28: uint32(0x00008020),
  3234. 30: uint32(0x00800000),
  3235. 31: uint32(0x20008020),
  3236. 32: uint32(0x00808020),
  3237. 33: uint32(0x00000020),
  3238. 34: uint32(0x20000000),
  3239. 35: uint32(0x00008000),
  3240. 36: uint32(0x20000020),
  3241. 37: uint32(0x20008000),
  3242. 38: uint32(0x00808000),
  3243. 39: uint32(0x20800020),
  3244. 41: uint32(0x00808020),
  3245. 42: uint32(0x00008020),
  3246. 43: uint32(0x20808000),
  3247. 44: uint32(0x20008000),
  3248. 45: uint32(0x00800000),
  3249. 46: uint32(0x20808020),
  3250. 47: uint32(0x20000000),
  3251. 48: uint32(0x20008020),
  3252. 49: uint32(0x20800000),
  3253. 50: uint32(0x00800000),
  3254. 51: uint32(0x20808020),
  3255. 52: uint32(0x00008000),
  3256. 53: uint32(0x00800020),
  3257. 54: uint32(0x20800020),
  3258. 55: uint32(0x00008020),
  3259. 56: uint32(0x00800020),
  3260. 58: uint32(0x20808000),
  3261. 59: uint32(0x20000020),
  3262. 60: uint32(0x20800000),
  3263. 61: uint32(0x20008020),
  3264. 62: uint32(0x00000020),
  3265. 63: uint32(0x00808000),
  3266. },
  3267. 3: {
  3268. 0: uint32(0x00080201),
  3269. 1: uint32(0x02000200),
  3270. 2: uint32(0x00000001),
  3271. 3: uint32(0x02080201),
  3272. 5: uint32(0x02080000),
  3273. 6: uint32(0x02000201),
  3274. 7: uint32(0x00080001),
  3275. 8: uint32(0x02080200),
  3276. 9: uint32(0x02000001),
  3277. 10: uint32(0x02000000),
  3278. 11: uint32(0x00000201),
  3279. 12: uint32(0x02000001),
  3280. 13: uint32(0x00080201),
  3281. 14: uint32(0x00080000),
  3282. 15: uint32(0x02000000),
  3283. 16: uint32(0x02080001),
  3284. 17: uint32(0x00080200),
  3285. 18: uint32(0x00000200),
  3286. 19: uint32(0x00000001),
  3287. 20: uint32(0x00080200),
  3288. 21: uint32(0x02000201),
  3289. 22: uint32(0x02080000),
  3290. 23: uint32(0x00000200),
  3291. 24: uint32(0x00000201),
  3292. 26: uint32(0x00080001),
  3293. 27: uint32(0x02080200),
  3294. 28: uint32(0x02000200),
  3295. 29: uint32(0x02080001),
  3296. 30: uint32(0x02080201),
  3297. 31: uint32(0x00080000),
  3298. 32: uint32(0x02080001),
  3299. 33: uint32(0x00000201),
  3300. 34: uint32(0x00080000),
  3301. 35: uint32(0x02000001),
  3302. 36: uint32(0x00080200),
  3303. 37: uint32(0x02000200),
  3304. 38: uint32(0x00000001),
  3305. 39: uint32(0x02080000),
  3306. 40: uint32(0x02000201),
  3307. 42: uint32(0x00000200),
  3308. 43: uint32(0x00080001),
  3309. 45: uint32(0x02080001),
  3310. 46: uint32(0x02080200),
  3311. 47: uint32(0x00000200),
  3312. 48: uint32(0x02000000),
  3313. 49: uint32(0x02080201),
  3314. 50: uint32(0x00080201),
  3315. 51: uint32(0x00080000),
  3316. 52: uint32(0x02080201),
  3317. 53: uint32(0x00000001),
  3318. 54: uint32(0x02000200),
  3319. 55: uint32(0x00080201),
  3320. 56: uint32(0x00080001),
  3321. 57: uint32(0x00080200),
  3322. 58: uint32(0x02080000),
  3323. 59: uint32(0x02000201),
  3324. 60: uint32(0x00000201),
  3325. 61: uint32(0x02000000),
  3326. 62: uint32(0x02000001),
  3327. 63: uint32(0x02080200),
  3328. },
  3329. 4: {
  3330. 0: uint32(0x01000000),
  3331. 1: uint32(0x00002000),
  3332. 2: uint32(0x00000080),
  3333. 3: uint32(0x01002084),
  3334. 4: uint32(0x01002004),
  3335. 5: uint32(0x01000080),
  3336. 6: uint32(0x00002084),
  3337. 7: uint32(0x01002000),
  3338. 8: uint32(0x00002000),
  3339. 9: uint32(0x00000004),
  3340. 10: uint32(0x01000004),
  3341. 11: uint32(0x00002080),
  3342. 12: uint32(0x01000084),
  3343. 13: uint32(0x01002004),
  3344. 14: uint32(0x01002080),
  3345. 16: uint32(0x00002080),
  3346. 17: uint32(0x01000000),
  3347. 18: uint32(0x00002004),
  3348. 19: uint32(0x00000084),
  3349. 20: uint32(0x01000080),
  3350. 21: uint32(0x00002084),
  3351. 23: uint32(0x01000004),
  3352. 24: uint32(0x00000004),
  3353. 25: uint32(0x01000084),
  3354. 26: uint32(0x01002084),
  3355. 27: uint32(0x00002004),
  3356. 28: uint32(0x01002000),
  3357. 29: uint32(0x00000080),
  3358. 30: uint32(0x00000084),
  3359. 31: uint32(0x01002080),
  3360. 32: uint32(0x01002080),
  3361. 33: uint32(0x01000084),
  3362. 34: uint32(0x00002004),
  3363. 35: uint32(0x01002000),
  3364. 36: uint32(0x00002000),
  3365. 37: uint32(0x00000004),
  3366. 38: uint32(0x01000004),
  3367. 39: uint32(0x01000080),
  3368. 40: uint32(0x01000000),
  3369. 41: uint32(0x00002080),
  3370. 42: uint32(0x01002084),
  3371. 44: uint32(0x00002084),
  3372. 45: uint32(0x01000000),
  3373. 46: uint32(0x00000080),
  3374. 47: uint32(0x00002004),
  3375. 48: uint32(0x01000084),
  3376. 49: uint32(0x00000080),
  3377. 51: uint32(0x01002084),
  3378. 52: uint32(0x01002004),
  3379. 53: uint32(0x01002080),
  3380. 54: uint32(0x00000084),
  3381. 55: uint32(0x00002000),
  3382. 56: uint32(0x00002080),
  3383. 57: uint32(0x01002004),
  3384. 58: uint32(0x01000080),
  3385. 59: uint32(0x00000084),
  3386. 60: uint32(0x00000004),
  3387. 61: uint32(0x00002084),
  3388. 62: uint32(0x01002000),
  3389. 63: uint32(0x01000004),
  3390. },
  3391. 5: {
  3392. 0: uint32(0x10000008),
  3393. 1: uint32(0x00040008),
  3394. 3: uint32(0x10040400),
  3395. 4: uint32(0x00040008),
  3396. 5: uint32(0x00000400),
  3397. 6: uint32(0x10000408),
  3398. 7: uint32(0x00040000),
  3399. 8: uint32(0x00000408),
  3400. 9: uint32(0x10040408),
  3401. 10: uint32(0x00040400),
  3402. 11: uint32(0x10000000),
  3403. 12: uint32(0x10000400),
  3404. 13: uint32(0x10000008),
  3405. 14: uint32(0x10040000),
  3406. 15: uint32(0x00040408),
  3407. 16: uint32(0x00040000),
  3408. 17: uint32(0x10000408),
  3409. 18: uint32(0x10040008),
  3410. 20: uint32(0x00000400),
  3411. 21: uint32(0x00000008),
  3412. 22: uint32(0x10040400),
  3413. 23: uint32(0x10040008),
  3414. 24: uint32(0x10040408),
  3415. 25: uint32(0x10040000),
  3416. 26: uint32(0x10000000),
  3417. 27: uint32(0x00000408),
  3418. 28: uint32(0x00000008),
  3419. 29: uint32(0x00040400),
  3420. 30: uint32(0x00040408),
  3421. 31: uint32(0x10000400),
  3422. 32: uint32(0x00000408),
  3423. 33: uint32(0x10000000),
  3424. 34: uint32(0x10000400),
  3425. 35: uint32(0x00040408),
  3426. 36: uint32(0x10040400),
  3427. 37: uint32(0x00040008),
  3428. 39: uint32(0x10000400),
  3429. 40: uint32(0x10000000),
  3430. 41: uint32(0x00000400),
  3431. 42: uint32(0x10040008),
  3432. 43: uint32(0x00040000),
  3433. 44: uint32(0x00040008),
  3434. 45: uint32(0x10040408),
  3435. 46: uint32(0x00040400),
  3436. 47: uint32(0x00000008),
  3437. 48: uint32(0x10040408),
  3438. 49: uint32(0x00040400),
  3439. 50: uint32(0x00040000),
  3440. 51: uint32(0x10000408),
  3441. 52: uint32(0x10000008),
  3442. 53: uint32(0x10040000),
  3443. 54: uint32(0x00040408),
  3444. 56: uint32(0x00000400),
  3445. 57: uint32(0x10000008),
  3446. 58: uint32(0x10000408),
  3447. 59: uint32(0x10040400),
  3448. 60: uint32(0x10040000),
  3449. 61: uint32(0x00000408),
  3450. 62: uint32(0x00000008),
  3451. 63: uint32(0x10040008),
  3452. },
  3453. 6: {
  3454. 0: uint32(0x00000800),
  3455. 1: uint32(0x00000040),
  3456. 2: uint32(0x00200040),
  3457. 3: uint32(0x80200000),
  3458. 4: uint32(0x80200840),
  3459. 5: uint32(0x80000800),
  3460. 6: uint32(0x00000840),
  3461. 8: uint32(0x00200000),
  3462. 9: uint32(0x80200040),
  3463. 10: uint32(0x80000040),
  3464. 11: uint32(0x00200800),
  3465. 12: uint32(0x80000000),
  3466. 13: uint32(0x00200840),
  3467. 14: uint32(0x00200800),
  3468. 15: uint32(0x80000040),
  3469. 16: uint32(0x80200040),
  3470. 17: uint32(0x00000800),
  3471. 18: uint32(0x80000800),
  3472. 19: uint32(0x80200840),
  3473. 21: uint32(0x00200040),
  3474. 22: uint32(0x80200000),
  3475. 23: uint32(0x00000840),
  3476. 24: uint32(0x80200800),
  3477. 25: uint32(0x80000840),
  3478. 26: uint32(0x00200840),
  3479. 27: uint32(0x80000000),
  3480. 28: uint32(0x80000840),
  3481. 29: uint32(0x80200800),
  3482. 30: uint32(0x00000040),
  3483. 31: uint32(0x00200000),
  3484. 32: uint32(0x80000840),
  3485. 33: uint32(0x00200800),
  3486. 34: uint32(0x80200800),
  3487. 35: uint32(0x80000040),
  3488. 36: uint32(0x00000800),
  3489. 37: uint32(0x00000040),
  3490. 38: uint32(0x00200000),
  3491. 39: uint32(0x80200800),
  3492. 40: uint32(0x80200040),
  3493. 41: uint32(0x80000840),
  3494. 42: uint32(0x00000840),
  3495. 44: uint32(0x00000040),
  3496. 45: uint32(0x80200000),
  3497. 46: uint32(0x80000000),
  3498. 47: uint32(0x00200040),
  3499. 49: uint32(0x80200040),
  3500. 50: uint32(0x00200040),
  3501. 51: uint32(0x00000840),
  3502. 52: uint32(0x80000040),
  3503. 53: uint32(0x00000800),
  3504. 54: uint32(0x80200840),
  3505. 55: uint32(0x00200000),
  3506. 56: uint32(0x00200840),
  3507. 57: uint32(0x80000000),
  3508. 58: uint32(0x80000800),
  3509. 59: uint32(0x80200840),
  3510. 60: uint32(0x80200000),
  3511. 61: uint32(0x00200840),
  3512. 62: uint32(0x00200800),
  3513. 63: uint32(0x80000800),
  3514. },
  3515. 7: {
  3516. 0: uint32(0x04100010),
  3517. 1: uint32(0x04104000),
  3518. 2: uint32(0x00004010),
  3519. 4: uint32(0x04004000),
  3520. 5: uint32(0x00100010),
  3521. 6: uint32(0x04100000),
  3522. 7: uint32(0x04104010),
  3523. 8: uint32(0x00000010),
  3524. 9: uint32(0x04000000),
  3525. 10: uint32(0x00104000),
  3526. 11: uint32(0x00004010),
  3527. 12: uint32(0x00104010),
  3528. 13: uint32(0x04004010),
  3529. 14: uint32(0x04000010),
  3530. 15: uint32(0x04100000),
  3531. 16: uint32(0x00004000),
  3532. 17: uint32(0x00104010),
  3533. 18: uint32(0x00100010),
  3534. 19: uint32(0x04004000),
  3535. 20: uint32(0x04104010),
  3536. 21: uint32(0x04000010),
  3537. 23: uint32(0x00104000),
  3538. 24: uint32(0x04000000),
  3539. 25: uint32(0x00100000),
  3540. 26: uint32(0x04004010),
  3541. 27: uint32(0x04100010),
  3542. 28: uint32(0x00100000),
  3543. 29: uint32(0x00004000),
  3544. 30: uint32(0x04104000),
  3545. 31: uint32(0x00000010),
  3546. 32: uint32(0x00100000),
  3547. 33: uint32(0x00004000),
  3548. 34: uint32(0x04000010),
  3549. 35: uint32(0x04104010),
  3550. 36: uint32(0x00004010),
  3551. 37: uint32(0x04000000),
  3552. 39: uint32(0x00104000),
  3553. 40: uint32(0x04100010),
  3554. 41: uint32(0x04004010),
  3555. 42: uint32(0x04004000),
  3556. 43: uint32(0x00100010),
  3557. 44: uint32(0x04104000),
  3558. 45: uint32(0x00000010),
  3559. 46: uint32(0x00100010),
  3560. 47: uint32(0x04004000),
  3561. 48: uint32(0x04104010),
  3562. 49: uint32(0x00100000),
  3563. 50: uint32(0x04100000),
  3564. 51: uint32(0x04000010),
  3565. 52: uint32(0x00104000),
  3566. 53: uint32(0x00004010),
  3567. 54: uint32(0x04004010),
  3568. 55: uint32(0x04100000),
  3569. 56: uint32(0x00000010),
  3570. 57: uint32(0x04104000),
  3571. 58: uint32(0x00104010),
  3572. 60: uint32(0x04000000),
  3573. 61: uint32(0x04100010),
  3574. 62: uint32(0x00004000),
  3575. 63: uint32(0x00104010),
  3576. },
  3577. }
  3578. var _shifts2 = [16]int8{
  3579. 2: int8(1),
  3580. 3: int8(1),
  3581. 4: int8(1),
  3582. 5: int8(1),
  3583. 6: int8(1),
  3584. 7: int8(1),
  3585. 9: int8(1),
  3586. 10: int8(1),
  3587. 11: int8(1),
  3588. 12: int8(1),
  3589. 13: int8(1),
  3590. 14: int8(1),
  3591. }
  3592. func X_XdmcpAuthSetup(tls *libc.TLS, key uintptr, schedule uintptr) {
  3593. var c, d, s, t TCARD32
  3594. var i int32
  3595. var in, k, v1, v10, v11, v2, v3, v4, v5, v6, v7, v8 uintptr
  3596. _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _ = c, d, i, in, k, s, t, v1, v10, v11, v2, v3, v4, v5, v6, v7, v8
  3597. k = schedule
  3598. in = key
  3599. v1 = in
  3600. in++
  3601. c = uint32(*(*TCARD8)(unsafe.Pointer(v1)))
  3602. v2 = in
  3603. in++
  3604. c |= uint32(*(*TCARD8)(unsafe.Pointer(v2))) << int32(8)
  3605. v3 = in
  3606. in++
  3607. c |= uint32(*(*TCARD8)(unsafe.Pointer(v3))) << int32(16)
  3608. v4 = in
  3609. in++
  3610. c |= uint32(*(*TCARD8)(unsafe.Pointer(v4))) << int32(24)
  3611. v5 = in
  3612. in++
  3613. d = uint32(*(*TCARD8)(unsafe.Pointer(v5)))
  3614. v6 = in
  3615. in++
  3616. d |= uint32(*(*TCARD8)(unsafe.Pointer(v6))) << int32(8)
  3617. v7 = in
  3618. in++
  3619. d |= uint32(*(*TCARD8)(unsafe.Pointer(v7))) << int32(16)
  3620. v8 = in
  3621. in++
  3622. d |= uint32(*(*TCARD8)(unsafe.Pointer(v8))) << int32(24)
  3623. /* do PC1 in 60 simple operations */
  3624. t = (d>>libc.Int32FromInt32(4) ^ c) & libc.Uint32FromInt32(libc.Int32FromInt32(0x0f0f0f0f))
  3625. c ^= t
  3626. d ^= t << libc.Int32FromInt32(4)
  3627. t = (c<<(libc.Int32FromInt32(16) - -libc.Int32FromInt32(2)) ^ c) & uint32(libc.Uint32FromUint32(0xcccc0000))
  3628. c = c ^ t ^ t>>(libc.Int32FromInt32(16) - -libc.Int32FromInt32(2))
  3629. t = (c<<(libc.Int32FromInt32(16) - -libc.Int32FromInt32(1)) ^ c) & uint32(libc.Uint32FromUint32(0xaaaa0000))
  3630. c = c ^ t ^ t>>(libc.Int32FromInt32(16) - -libc.Int32FromInt32(1))
  3631. t = (c<<(libc.Int32FromInt32(16)-libc.Int32FromInt32(8)) ^ c) & libc.Uint32FromInt32(libc.Int32FromInt32(0x00ff0000))
  3632. c = c ^ t ^ t>>(libc.Int32FromInt32(16)-libc.Int32FromInt32(8))
  3633. t = (c<<(libc.Int32FromInt32(16) - -libc.Int32FromInt32(1)) ^ c) & uint32(libc.Uint32FromUint32(0xaaaa0000))
  3634. c = c ^ t ^ t>>(libc.Int32FromInt32(16) - -libc.Int32FromInt32(1))
  3635. t = (d<<(libc.Int32FromInt32(16) - -libc.Int32FromInt32(8)) ^ d) & uint32(libc.Uint32FromUint32(0xff000000))
  3636. d = d ^ t ^ t>>(libc.Int32FromInt32(16) - -libc.Int32FromInt32(8))
  3637. t = (d<<(libc.Int32FromInt32(16)-libc.Int32FromInt32(8)) ^ d) & libc.Uint32FromInt32(libc.Int32FromInt32(0x00ff0000))
  3638. d = d ^ t ^ t>>(libc.Int32FromInt32(16)-libc.Int32FromInt32(8))
  3639. t = (d<<(libc.Int32FromInt32(16)-libc.Int32FromInt32(2)) ^ d) & libc.Uint32FromInt32(libc.Int32FromInt32(0x33330000))
  3640. d = d ^ t ^ t>>(libc.Int32FromInt32(16)-libc.Int32FromInt32(2))
  3641. d = d&uint32(0x00aa00aa)<<int32(7) | d&uint32(0x55005500)>>int32(7) | d&uint32(0xaa55aa55)
  3642. d = d>>libc.Int32FromInt32(8) | c&uint32(0xf0000000)>>int32(4)
  3643. c &= uint32(0x0fffffff)
  3644. i = 0
  3645. for {
  3646. if !(i < int32(m_ITERATIONS)) {
  3647. break
  3648. }
  3649. if _shifts2[i] != 0 {
  3650. c = c>>libc.Int32FromInt32(2) | c<<libc.Int32FromInt32(26)
  3651. d = d>>libc.Int32FromInt32(2) | d<<libc.Int32FromInt32(26)
  3652. } else {
  3653. c = c>>libc.Int32FromInt32(1) | c<<libc.Int32FromInt32(27)
  3654. d = d>>libc.Int32FromInt32(1) | d<<libc.Int32FromInt32(27)
  3655. }
  3656. c &= uint32(0x0fffffff)
  3657. d &= uint32(0x0fffffff)
  3658. /* could be a few less shifts but I am to lazy at this
  3659. * point in time to investigate */
  3660. s = *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_skb)) + uintptr(c&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_skb)) + 1*256 + uintptr(c>>libc.Int32FromInt32(6)&uint32(0x03)|c>>libc.Int32FromInt32(7)&uint32(0x3c))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_skb)) + 2*256 + uintptr(c>>libc.Int32FromInt32(13)&uint32(0x0f)|c>>libc.Int32FromInt32(14)&uint32(0x30))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_skb)) + 3*256 + uintptr(c>>libc.Int32FromInt32(20)&uint32(0x01)|c>>libc.Int32FromInt32(21)&uint32(0x06)|c>>libc.Int32FromInt32(22)&uint32(0x38))*4))
  3661. t = *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_skb)) + 4*256 + uintptr(d&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_skb)) + 5*256 + uintptr(d>>libc.Int32FromInt32(7)&uint32(0x03)|d>>libc.Int32FromInt32(8)&uint32(0x3c))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_skb)) + 6*256 + uintptr(d>>libc.Int32FromInt32(15)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_skb)) + 7*256 + uintptr(d>>libc.Int32FromInt32(21)&uint32(0x0f)|d>>libc.Int32FromInt32(22)&uint32(0x30))*4))
  3662. /* table contained 0213 4657 */
  3663. v10 = k
  3664. k += 4
  3665. *(*TCARD32)(unsafe.Pointer(v10)) = t<<libc.Int32FromInt32(16) | s&libc.Uint32FromInt32(0x0000ffff)
  3666. s = s>>libc.Int32FromInt32(16) | t&libc.Uint32FromUint32(0xffff0000)
  3667. s = s<<libc.Int32FromInt32(4) | s>>libc.Int32FromInt32(28)
  3668. v11 = k
  3669. k += 4
  3670. *(*TCARD32)(unsafe.Pointer(v11)) = s
  3671. goto _9
  3672. _9:
  3673. ;
  3674. i++
  3675. }
  3676. return
  3677. }
  3678. func X_XdmcpAuthDoIt(tls *libc.TLS, input uintptr, output uintptr, ks uintptr, encrypt int32) {
  3679. var i int32
  3680. var in, out, s, v1, v11, v12, v13, v14, v15, v16, v17, v18, v2, v3, v4, v5, v6, v7, v8 uintptr
  3681. var l, r, t, u TCARD32
  3682. _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _ = i, in, l, out, r, s, t, u, v1, v11, v12, v13, v14, v15, v16, v17, v18, v2, v3, v4, v5, v6, v7, v8
  3683. in = input
  3684. out = output
  3685. v1 = in
  3686. in++
  3687. l = uint32(*(*TCARD8)(unsafe.Pointer(v1)))
  3688. v2 = in
  3689. in++
  3690. l |= uint32(*(*TCARD8)(unsafe.Pointer(v2))) << int32(8)
  3691. v3 = in
  3692. in++
  3693. l |= uint32(*(*TCARD8)(unsafe.Pointer(v3))) << int32(16)
  3694. v4 = in
  3695. in++
  3696. l |= uint32(*(*TCARD8)(unsafe.Pointer(v4))) << int32(24)
  3697. v5 = in
  3698. in++
  3699. r = uint32(*(*TCARD8)(unsafe.Pointer(v5)))
  3700. v6 = in
  3701. in++
  3702. r |= uint32(*(*TCARD8)(unsafe.Pointer(v6))) << int32(8)
  3703. v7 = in
  3704. in++
  3705. r |= uint32(*(*TCARD8)(unsafe.Pointer(v7))) << int32(16)
  3706. v8 = in
  3707. in++
  3708. r |= uint32(*(*TCARD8)(unsafe.Pointer(v8))) << int32(24)
  3709. /* do IP */
  3710. t = (r>>libc.Int32FromInt32(4) ^ l) & libc.Uint32FromInt32(libc.Int32FromInt32(0x0f0f0f0f))
  3711. l ^= t
  3712. r ^= t << libc.Int32FromInt32(4)
  3713. t = (l>>libc.Int32FromInt32(16) ^ r) & libc.Uint32FromInt32(libc.Int32FromInt32(0x0000ffff))
  3714. r ^= t
  3715. l ^= t << libc.Int32FromInt32(16)
  3716. t = (r>>libc.Int32FromInt32(2) ^ l) & libc.Uint32FromInt32(libc.Int32FromInt32(0x33333333))
  3717. l ^= t
  3718. r ^= t << libc.Int32FromInt32(2)
  3719. t = (l>>libc.Int32FromInt32(8) ^ r) & libc.Uint32FromInt32(libc.Int32FromInt32(0x00ff00ff))
  3720. r ^= t
  3721. l ^= t << libc.Int32FromInt32(8)
  3722. t = (r>>libc.Int32FromInt32(1) ^ l) & libc.Uint32FromInt32(libc.Int32FromInt32(0x55555555))
  3723. l ^= t
  3724. r ^= t << libc.Int32FromInt32(1)
  3725. /* r and l are reversed - remember that :-) */
  3726. t = l
  3727. l = r
  3728. r = t
  3729. s = ks
  3730. if encrypt != 0 {
  3731. i = 0
  3732. for {
  3733. if !(i < libc.Int32FromInt32(m_ITERATIONS)*libc.Int32FromInt32(2)) {
  3734. break
  3735. }
  3736. t = r<<libc.Int32FromInt32(1) | r>>libc.Int32FromInt32(31)
  3737. u = t ^ *(*TCARD32)(unsafe.Pointer(s + uintptr(i)*4))
  3738. t = t ^ *(*TCARD32)(unsafe.Pointer(s + uintptr(i+int32(1))*4))
  3739. t = t>>libc.Int32FromInt32(4) | t<<libc.Int32FromInt32(28)
  3740. l ^= *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 1*256 + uintptr(t&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 3*256 + uintptr(t>>libc.Int32FromInt32(8)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 5*256 + uintptr(t>>libc.Int32FromInt32(16)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 7*256 + uintptr(t>>libc.Int32FromInt32(24)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + uintptr(u&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 2*256 + uintptr(u>>libc.Int32FromInt32(8)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 4*256 + uintptr(u>>libc.Int32FromInt32(16)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 6*256 + uintptr(u>>libc.Int32FromInt32(24)&uint32(0x3f))*4)) /* 1 */
  3741. t = l<<libc.Int32FromInt32(1) | l>>libc.Int32FromInt32(31)
  3742. u = t ^ *(*TCARD32)(unsafe.Pointer(s + uintptr(i+int32(2))*4))
  3743. t = t ^ *(*TCARD32)(unsafe.Pointer(s + uintptr(i+int32(2)+int32(1))*4))
  3744. t = t>>libc.Int32FromInt32(4) | t<<libc.Int32FromInt32(28)
  3745. r ^= *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 1*256 + uintptr(t&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 3*256 + uintptr(t>>libc.Int32FromInt32(8)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 5*256 + uintptr(t>>libc.Int32FromInt32(16)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 7*256 + uintptr(t>>libc.Int32FromInt32(24)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + uintptr(u&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 2*256 + uintptr(u>>libc.Int32FromInt32(8)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 4*256 + uintptr(u>>libc.Int32FromInt32(16)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 6*256 + uintptr(u>>libc.Int32FromInt32(24)&uint32(0x3f))*4)) /* 2 */
  3746. goto _9
  3747. _9:
  3748. ;
  3749. i += int32(4)
  3750. }
  3751. } else {
  3752. i = libc.Int32FromInt32(m_ITERATIONS)*libc.Int32FromInt32(2) - libc.Int32FromInt32(2)
  3753. for {
  3754. if !(i >= 0) {
  3755. break
  3756. }
  3757. t = r<<libc.Int32FromInt32(1) | r>>libc.Int32FromInt32(31)
  3758. u = t ^ *(*TCARD32)(unsafe.Pointer(s + uintptr(i)*4))
  3759. t = t ^ *(*TCARD32)(unsafe.Pointer(s + uintptr(i+int32(1))*4))
  3760. t = t>>libc.Int32FromInt32(4) | t<<libc.Int32FromInt32(28)
  3761. l ^= *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 1*256 + uintptr(t&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 3*256 + uintptr(t>>libc.Int32FromInt32(8)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 5*256 + uintptr(t>>libc.Int32FromInt32(16)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 7*256 + uintptr(t>>libc.Int32FromInt32(24)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + uintptr(u&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 2*256 + uintptr(u>>libc.Int32FromInt32(8)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 4*256 + uintptr(u>>libc.Int32FromInt32(16)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 6*256 + uintptr(u>>libc.Int32FromInt32(24)&uint32(0x3f))*4)) /* 1 */
  3762. t = l<<libc.Int32FromInt32(1) | l>>libc.Int32FromInt32(31)
  3763. u = t ^ *(*TCARD32)(unsafe.Pointer(s + uintptr(i-int32(2))*4))
  3764. t = t ^ *(*TCARD32)(unsafe.Pointer(s + uintptr(i-int32(2)+int32(1))*4))
  3765. t = t>>libc.Int32FromInt32(4) | t<<libc.Int32FromInt32(28)
  3766. r ^= *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 1*256 + uintptr(t&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 3*256 + uintptr(t>>libc.Int32FromInt32(8)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 5*256 + uintptr(t>>libc.Int32FromInt32(16)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 7*256 + uintptr(t>>libc.Int32FromInt32(24)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + uintptr(u&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 2*256 + uintptr(u>>libc.Int32FromInt32(8)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 4*256 + uintptr(u>>libc.Int32FromInt32(16)&uint32(0x3f))*4)) | *(*TCARD32)(unsafe.Pointer(uintptr(unsafe.Pointer(&_SPtrans)) + 6*256 + uintptr(u>>libc.Int32FromInt32(24)&uint32(0x3f))*4)) /* 2 */
  3767. goto _10
  3768. _10:
  3769. ;
  3770. i -= int32(4)
  3771. }
  3772. }
  3773. /* swap l and r
  3774. * we will not do the swap so just remember they are
  3775. * reversed for the rest of the subroutine
  3776. * luckily by FP fixes this problem :-) */
  3777. t = (r>>libc.Int32FromInt32(1) ^ l) & libc.Uint32FromInt32(libc.Int32FromInt32(0x55555555))
  3778. l ^= t
  3779. r ^= t << libc.Int32FromInt32(1)
  3780. t = (l>>libc.Int32FromInt32(8) ^ r) & libc.Uint32FromInt32(libc.Int32FromInt32(0x00ff00ff))
  3781. r ^= t
  3782. l ^= t << libc.Int32FromInt32(8)
  3783. t = (r>>libc.Int32FromInt32(2) ^ l) & libc.Uint32FromInt32(libc.Int32FromInt32(0x33333333))
  3784. l ^= t
  3785. r ^= t << libc.Int32FromInt32(2)
  3786. t = (l>>libc.Int32FromInt32(16) ^ r) & libc.Uint32FromInt32(libc.Int32FromInt32(0x0000ffff))
  3787. r ^= t
  3788. l ^= t << libc.Int32FromInt32(16)
  3789. t = (r>>libc.Int32FromInt32(4) ^ l) & libc.Uint32FromInt32(libc.Int32FromInt32(0x0f0f0f0f))
  3790. l ^= t
  3791. r ^= t << libc.Int32FromInt32(4)
  3792. v11 = out
  3793. out++
  3794. *(*TCARD8)(unsafe.Pointer(v11)) = uint8(l & libc.Uint32FromInt32(0xff))
  3795. v12 = out
  3796. out++
  3797. *(*TCARD8)(unsafe.Pointer(v12)) = uint8(l >> libc.Int32FromInt32(8) & libc.Uint32FromInt32(0xff))
  3798. v13 = out
  3799. out++
  3800. *(*TCARD8)(unsafe.Pointer(v13)) = uint8(l >> libc.Int32FromInt32(16) & libc.Uint32FromInt32(0xff))
  3801. v14 = out
  3802. out++
  3803. *(*TCARD8)(unsafe.Pointer(v14)) = uint8(l >> libc.Int32FromInt32(24) & libc.Uint32FromInt32(0xff))
  3804. v15 = out
  3805. out++
  3806. *(*TCARD8)(unsafe.Pointer(v15)) = uint8(r & libc.Uint32FromInt32(0xff))
  3807. v16 = out
  3808. out++
  3809. *(*TCARD8)(unsafe.Pointer(v16)) = uint8(r >> libc.Int32FromInt32(8) & libc.Uint32FromInt32(0xff))
  3810. v17 = out
  3811. out++
  3812. *(*TCARD8)(unsafe.Pointer(v17)) = uint8(r >> libc.Int32FromInt32(16) & libc.Uint32FromInt32(0xff))
  3813. v18 = out
  3814. out++
  3815. *(*TCARD8)(unsafe.Pointer(v18)) = uint8(r >> libc.Int32FromInt32(24) & libc.Uint32FromInt32(0xff))
  3816. return
  3817. }