ccgo_linux_loong64.go 120 KB

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