linksocks 3.0.12__cp311-cp311-win_amd64.whl → 3.0.13__cp311-cp311-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of linksocks might be problematic. Click here for more details.

@@ -1,7 +1,7 @@
1
1
  /*
2
2
  cgo stubs for package linksockslib.
3
3
  File is generated by gopy. Do not edit.
4
- gopy.EXE build -vm=C:\Users\RUNNER~1\AppData\Local\Temp\linksocks_pyvenv_zqf2yhv2\venv\Scripts\python.exe -output=D:\a\linksocks\linksocks\_bindings\python\linksockslib -name=linksockslib -no-make=true ./linksocks_go
4
+ gopy.EXE build -vm=C:\Users\RUNNER~1\AppData\Local\Temp\linksocks_pyvenv_5sgky1ki\venv\Scripts\python.exe -output=D:\a\linksocks\linksocks\_bindings\python\linksockslib -name=linksockslib -no-make=true ./linksocks_go
5
5
  */
6
6
 
7
7
  package main
@@ -5228,1530 +5228,1540 @@ func linksocks_BaseMessage_GetType(_handle CGoHandle) *C.char {
5228
5228
 
5229
5229
  // ---- Structs ---
5230
5230
 
5231
- // --- wrapping struct: linksocks.ConnectResponseMessage ---
5231
+ // --- wrapping struct: linksocks.LinkSocksClient ---
5232
5232
  //
5233
- //export linksocks_ConnectResponseMessage_CTor
5234
- func linksocks_ConnectResponseMessage_CTor() CGoHandle {
5235
- return CGoHandle(handleFromPtr_linksocks_ConnectResponseMessage(&linksocks.ConnectResponseMessage{}))
5236
- }
5237
-
5238
- //export linksocks_ConnectResponseMessage_Success_Get
5239
- func linksocks_ConnectResponseMessage_Success_Get(handle CGoHandle) C.char {
5240
- op := ptrFromHandle_linksocks_ConnectResponseMessage(handle)
5241
- return boolGoToPy(op.Success)
5242
- }
5243
-
5244
- //export linksocks_ConnectResponseMessage_Success_Set
5245
- func linksocks_ConnectResponseMessage_Success_Set(handle CGoHandle, val C.char) {
5246
- op := ptrFromHandle_linksocks_ConnectResponseMessage(handle)
5247
- op.Success = boolPyToGo(val)
5248
- }
5249
-
5250
- //export linksocks_ConnectResponseMessage_Error_Get
5251
- func linksocks_ConnectResponseMessage_Error_Get(handle CGoHandle) *C.char {
5252
- op := ptrFromHandle_linksocks_ConnectResponseMessage(handle)
5253
- return C.CString(op.Error)
5233
+ //export linksocks_LinkSocksClient_CTor
5234
+ func linksocks_LinkSocksClient_CTor() CGoHandle {
5235
+ return CGoHandle(handleFromPtr_linksocks_LinkSocksClient(&linksocks.LinkSocksClient{}))
5254
5236
  }
5255
5237
 
5256
- //export linksocks_ConnectResponseMessage_Error_Set
5257
- func linksocks_ConnectResponseMessage_Error_Set(handle CGoHandle, val *C.char) {
5258
- op := ptrFromHandle_linksocks_ConnectResponseMessage(handle)
5259
- op.Error = C.GoString(val)
5238
+ //export linksocks_LinkSocksClient_IsConnected_Get
5239
+ func linksocks_LinkSocksClient_IsConnected_Get(handle CGoHandle) C.char {
5240
+ op := ptrFromHandle_linksocks_LinkSocksClient(handle)
5241
+ return boolGoToPy(op.IsConnected)
5260
5242
  }
5261
5243
 
5262
- //export linksocks_ConnectResponseMessage_ChannelID_Get
5263
- func linksocks_ConnectResponseMessage_ChannelID_Get(handle CGoHandle) CGoHandle {
5264
- op := ptrFromHandle_linksocks_ConnectResponseMessage(handle)
5265
- return handleFromPtr_uuid_UUID(&op.ChannelID)
5244
+ //export linksocks_LinkSocksClient_IsConnected_Set
5245
+ func linksocks_LinkSocksClient_IsConnected_Set(handle CGoHandle, val C.char) {
5246
+ op := ptrFromHandle_linksocks_LinkSocksClient(handle)
5247
+ op.IsConnected = boolPyToGo(val)
5266
5248
  }
5267
5249
 
5268
- //export linksocks_ConnectResponseMessage_GetType
5269
- func linksocks_ConnectResponseMessage_GetType(_handle CGoHandle) *C.char {
5250
+ //export linksocks_LinkSocksClient_WaitReady
5251
+ func linksocks_LinkSocksClient_WaitReady(_handle CGoHandle, ctx CGoHandle, timeout C.longlong) *C.char {
5270
5252
  _saved_thread := C.PyEval_SaveThread()
5271
- defer C.PyEval_RestoreThread(_saved_thread)
5272
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ConnectResponseMessage")
5253
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksClient")
5273
5254
  if __err != nil {
5274
- return C.CString("")
5255
+ return errorGoToPy(nil)
5275
5256
  }
5276
- return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ConnectResponseMessage{})).(*linksocks.ConnectResponseMessage).GetType())
5277
-
5278
- }
5257
+ __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksClient{})).(*linksocks.LinkSocksClient).WaitReady(ptrFromHandle_context_Context(ctx), time.Duration(int64(timeout)))
5279
5258
 
5280
- // --- wrapping struct: linksocks.ConnectorResponseMessage ---
5281
- //
5282
- //export linksocks_ConnectorResponseMessage_CTor
5283
- func linksocks_ConnectorResponseMessage_CTor() CGoHandle {
5284
- return CGoHandle(handleFromPtr_linksocks_ConnectorResponseMessage(&linksocks.ConnectorResponseMessage{}))
5259
+ C.PyEval_RestoreThread(_saved_thread)
5260
+ if __err != nil {
5261
+ estr := C.CString(__err.Error())
5262
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5263
+ return estr
5264
+ }
5265
+ return C.CString("")
5285
5266
  }
5286
5267
 
5287
- //export linksocks_ConnectorResponseMessage_Success_Get
5288
- func linksocks_ConnectorResponseMessage_Success_Get(handle CGoHandle) C.char {
5289
- op := ptrFromHandle_linksocks_ConnectorResponseMessage(handle)
5290
- return boolGoToPy(op.Success)
5291
- }
5268
+ //export linksocks_LinkSocksClient_Connect
5269
+ func linksocks_LinkSocksClient_Connect(_handle CGoHandle, ctx CGoHandle) *C.char {
5270
+ _saved_thread := C.PyEval_SaveThread()
5271
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksClient")
5272
+ if __err != nil {
5273
+ return errorGoToPy(nil)
5274
+ }
5275
+ __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksClient{})).(*linksocks.LinkSocksClient).Connect(ptrFromHandle_context_Context(ctx))
5292
5276
 
5293
- //export linksocks_ConnectorResponseMessage_Success_Set
5294
- func linksocks_ConnectorResponseMessage_Success_Set(handle CGoHandle, val C.char) {
5295
- op := ptrFromHandle_linksocks_ConnectorResponseMessage(handle)
5296
- op.Success = boolPyToGo(val)
5277
+ C.PyEval_RestoreThread(_saved_thread)
5278
+ if __err != nil {
5279
+ estr := C.CString(__err.Error())
5280
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5281
+ return estr
5282
+ }
5283
+ return C.CString("")
5297
5284
  }
5298
5285
 
5299
- //export linksocks_ConnectorResponseMessage_Error_Get
5300
- func linksocks_ConnectorResponseMessage_Error_Get(handle CGoHandle) *C.char {
5301
- op := ptrFromHandle_linksocks_ConnectorResponseMessage(handle)
5302
- return C.CString(op.Error)
5286
+ //export linksocks_LinkSocksClient_Close
5287
+ func linksocks_LinkSocksClient_Close(_handle CGoHandle, goRun C.char) {
5288
+ _saved_thread := C.PyEval_SaveThread()
5289
+ defer C.PyEval_RestoreThread(_saved_thread)
5290
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksClient")
5291
+ if __err != nil {
5292
+ return
5293
+ }
5294
+ if boolPyToGo(goRun) {
5295
+ go gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksClient{})).(*linksocks.LinkSocksClient).Close()
5296
+ } else {
5297
+ gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksClient{})).(*linksocks.LinkSocksClient).Close()
5298
+ }
5303
5299
  }
5304
5300
 
5305
- //export linksocks_ConnectorResponseMessage_Error_Set
5306
- func linksocks_ConnectorResponseMessage_Error_Set(handle CGoHandle, val *C.char) {
5307
- op := ptrFromHandle_linksocks_ConnectorResponseMessage(handle)
5308
- op.Error = C.GoString(val)
5309
- }
5301
+ //export linksocks_LinkSocksClient_AddConnector
5302
+ func linksocks_LinkSocksClient_AddConnector(_handle CGoHandle, connectorToken *C.char) *C.char {
5303
+ _saved_thread := C.PyEval_SaveThread()
5304
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksClient")
5305
+ if __err != nil {
5306
+ return C.CString("")
5307
+ }
5308
+ cret, __err := gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksClient{})).(*linksocks.LinkSocksClient).AddConnector(C.GoString(connectorToken))
5310
5309
 
5311
- //export linksocks_ConnectorResponseMessage_ChannelID_Get
5312
- func linksocks_ConnectorResponseMessage_ChannelID_Get(handle CGoHandle) CGoHandle {
5313
- op := ptrFromHandle_linksocks_ConnectorResponseMessage(handle)
5314
- return handleFromPtr_uuid_UUID(&op.ChannelID)
5310
+ C.PyEval_RestoreThread(_saved_thread)
5311
+ if __err != nil {
5312
+ estr := C.CString(__err.Error())
5313
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5314
+ C.free(unsafe.Pointer(estr))
5315
+ return C.CString("")
5316
+ }
5317
+ return C.CString(cret)
5315
5318
  }
5316
5319
 
5317
- //export linksocks_ConnectorResponseMessage_ConnectorToken_Get
5318
- func linksocks_ConnectorResponseMessage_ConnectorToken_Get(handle CGoHandle) *C.char {
5319
- op := ptrFromHandle_linksocks_ConnectorResponseMessage(handle)
5320
- return C.CString(op.ConnectorToken)
5321
- }
5320
+ //export linksocks_LinkSocksClient_RemoveConnector
5321
+ func linksocks_LinkSocksClient_RemoveConnector(_handle CGoHandle, connectorToken *C.char) *C.char {
5322
+ _saved_thread := C.PyEval_SaveThread()
5323
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksClient")
5324
+ if __err != nil {
5325
+ return errorGoToPy(nil)
5326
+ }
5327
+ __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksClient{})).(*linksocks.LinkSocksClient).RemoveConnector(C.GoString(connectorToken))
5322
5328
 
5323
- //export linksocks_ConnectorResponseMessage_ConnectorToken_Set
5324
- func linksocks_ConnectorResponseMessage_ConnectorToken_Set(handle CGoHandle, val *C.char) {
5325
- op := ptrFromHandle_linksocks_ConnectorResponseMessage(handle)
5326
- op.ConnectorToken = C.GoString(val)
5329
+ C.PyEval_RestoreThread(_saved_thread)
5330
+ if __err != nil {
5331
+ estr := C.CString(__err.Error())
5332
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5333
+ return estr
5334
+ }
5335
+ return C.CString("")
5327
5336
  }
5328
5337
 
5329
- //export linksocks_ConnectorResponseMessage_GetType
5330
- func linksocks_ConnectorResponseMessage_GetType(_handle CGoHandle) *C.char {
5338
+ //export linksocks_LinkSocksClient_GetPartnersCount
5339
+ func linksocks_LinkSocksClient_GetPartnersCount(_handle CGoHandle) C.longlong {
5331
5340
  _saved_thread := C.PyEval_SaveThread()
5332
5341
  defer C.PyEval_RestoreThread(_saved_thread)
5333
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ConnectorResponseMessage")
5342
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksClient")
5334
5343
  if __err != nil {
5335
- return C.CString("")
5344
+ return C.longlong(0)
5336
5345
  }
5337
- return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ConnectorResponseMessage{})).(*linksocks.ConnectorResponseMessage).GetType())
5346
+ return C.longlong(gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksClient{})).(*linksocks.LinkSocksClient).GetPartnersCount())
5338
5347
 
5339
5348
  }
5340
5349
 
5341
- // --- wrapping struct: linksocks.ContextWithCancel ---
5350
+ // --- wrapping struct: linksocks.Relay ---
5342
5351
  //
5343
- //export linksocks_ContextWithCancel_CTor
5344
- func linksocks_ContextWithCancel_CTor() CGoHandle {
5345
- return CGoHandle(handleFromPtr_linksocks_ContextWithCancel(&linksocks.ContextWithCancel{}))
5352
+ //export linksocks_Relay_CTor
5353
+ func linksocks_Relay_CTor() CGoHandle {
5354
+ return CGoHandle(handleFromPtr_linksocks_Relay(&linksocks.Relay{}))
5346
5355
  }
5347
5356
 
5348
- //export linksocks_ContextWithCancel_Cancel
5349
- func linksocks_ContextWithCancel_Cancel(_handle CGoHandle, goRun C.char) {
5357
+ //export linksocks_Relay_RefuseSocksRequest
5358
+ func linksocks_Relay_RefuseSocksRequest(_handle CGoHandle, conn CGoHandle, reason C.char) *C.char {
5350
5359
  _saved_thread := C.PyEval_SaveThread()
5351
- defer C.PyEval_RestoreThread(_saved_thread)
5352
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ContextWithCancel")
5360
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
5353
5361
  if __err != nil {
5354
- return
5362
+ return errorGoToPy(nil)
5355
5363
  }
5356
- if boolPyToGo(goRun) {
5357
- go gopyh.Embed(vifc, reflect.TypeOf(linksocks.ContextWithCancel{})).(*linksocks.ContextWithCancel).Cancel()
5358
- } else {
5359
- gopyh.Embed(vifc, reflect.TypeOf(linksocks.ContextWithCancel{})).(*linksocks.ContextWithCancel).Cancel()
5364
+ __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).RefuseSocksRequest(ptrFromHandle_net_Conn(conn), byte(reason))
5365
+
5366
+ C.PyEval_RestoreThread(_saved_thread)
5367
+ if __err != nil {
5368
+ estr := C.CString(__err.Error())
5369
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5370
+ return estr
5360
5371
  }
5372
+ return C.CString("")
5361
5373
  }
5362
5374
 
5363
- //export linksocks_ContextWithCancel_Context
5364
- func linksocks_ContextWithCancel_Context(_handle CGoHandle) CGoHandle {
5375
+ //export linksocks_Relay_HandleNetworkConnection
5376
+ func linksocks_Relay_HandleNetworkConnection(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, request CGoHandle) *C.char {
5365
5377
  _saved_thread := C.PyEval_SaveThread()
5366
- defer C.PyEval_RestoreThread(_saved_thread)
5367
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ContextWithCancel")
5378
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
5368
5379
  if __err != nil {
5369
- return handleFromPtr_context_Context(nil)
5380
+ return errorGoToPy(nil)
5370
5381
  }
5371
- return handleFromPtr_context_Context(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ContextWithCancel{})).(*linksocks.ContextWithCancel).Context())
5372
-
5373
- }
5382
+ __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleNetworkConnection(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), *ptrFromHandle_linksocks_ConnectMessage(request))
5374
5383
 
5375
- // --- wrapping struct: linksocks.PortPool ---
5376
- //
5377
- //export linksocks_PortPool_CTor
5378
- func linksocks_PortPool_CTor() CGoHandle {
5379
- return CGoHandle(handleFromPtr_linksocks_PortPool(&linksocks.PortPool{}))
5384
+ C.PyEval_RestoreThread(_saved_thread)
5385
+ if __err != nil {
5386
+ estr := C.CString(__err.Error())
5387
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5388
+ return estr
5389
+ }
5390
+ return C.CString("")
5380
5391
  }
5381
5392
 
5382
- //export linksocks_PortPool_Get
5383
- func linksocks_PortPool_Get(_handle CGoHandle, requestedPort C.longlong) C.longlong {
5393
+ //export linksocks_Relay_HandleTCPConnection
5394
+ func linksocks_Relay_HandleTCPConnection(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, request CGoHandle) *C.char {
5384
5395
  _saved_thread := C.PyEval_SaveThread()
5385
- defer C.PyEval_RestoreThread(_saved_thread)
5386
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.PortPool")
5396
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
5387
5397
  if __err != nil {
5388
- return C.longlong(0)
5398
+ return errorGoToPy(nil)
5389
5399
  }
5390
- return C.longlong(gopyh.Embed(vifc, reflect.TypeOf(linksocks.PortPool{})).(*linksocks.PortPool).Get(int(requestedPort)))
5400
+ __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleTCPConnection(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), *ptrFromHandle_linksocks_ConnectMessage(request))
5391
5401
 
5402
+ C.PyEval_RestoreThread(_saved_thread)
5403
+ if __err != nil {
5404
+ estr := C.CString(__err.Error())
5405
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5406
+ return estr
5407
+ }
5408
+ return C.CString("")
5392
5409
  }
5393
5410
 
5394
- //export linksocks_PortPool_Put
5395
- func linksocks_PortPool_Put(_handle CGoHandle, port C.longlong, goRun C.char) {
5411
+ //export linksocks_Relay_HandleUDPConnection
5412
+ func linksocks_Relay_HandleUDPConnection(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, request CGoHandle) *C.char {
5396
5413
  _saved_thread := C.PyEval_SaveThread()
5397
- defer C.PyEval_RestoreThread(_saved_thread)
5398
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.PortPool")
5414
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
5399
5415
  if __err != nil {
5400
- return
5401
- }
5402
- if boolPyToGo(goRun) {
5403
- go gopyh.Embed(vifc, reflect.TypeOf(linksocks.PortPool{})).(*linksocks.PortPool).Put(int(port))
5404
- } else {
5405
- gopyh.Embed(vifc, reflect.TypeOf(linksocks.PortPool{})).(*linksocks.PortPool).Put(int(port))
5416
+ return errorGoToPy(nil)
5406
5417
  }
5407
- }
5418
+ __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleUDPConnection(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), *ptrFromHandle_linksocks_ConnectMessage(request))
5408
5419
 
5409
- // --- wrapping struct: linksocks.ReverseTokenResult ---
5410
- //
5411
- //export linksocks_ReverseTokenResult_CTor
5412
- func linksocks_ReverseTokenResult_CTor() CGoHandle {
5413
- return CGoHandle(handleFromPtr_linksocks_ReverseTokenResult(&linksocks.ReverseTokenResult{}))
5420
+ C.PyEval_RestoreThread(_saved_thread)
5421
+ if __err != nil {
5422
+ estr := C.CString(__err.Error())
5423
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5424
+ return estr
5425
+ }
5426
+ return C.CString("")
5414
5427
  }
5415
5428
 
5416
- //export linksocks_ReverseTokenResult_Token_Get
5417
- func linksocks_ReverseTokenResult_Token_Get(handle CGoHandle) *C.char {
5418
- op := ptrFromHandle_linksocks_ReverseTokenResult(handle)
5419
- return C.CString(op.Token)
5420
- }
5429
+ //export linksocks_Relay_HandleSocksRequest
5430
+ func linksocks_Relay_HandleSocksRequest(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, socksConn CGoHandle, socksUsername *C.char, socksPassword *C.char) *C.char {
5431
+ _saved_thread := C.PyEval_SaveThread()
5432
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
5433
+ if __err != nil {
5434
+ return errorGoToPy(nil)
5435
+ }
5436
+ __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleSocksRequest(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), ptrFromHandle_net_Conn(socksConn), C.GoString(socksUsername), C.GoString(socksPassword))
5421
5437
 
5422
- //export linksocks_ReverseTokenResult_Token_Set
5423
- func linksocks_ReverseTokenResult_Token_Set(handle CGoHandle, val *C.char) {
5424
- op := ptrFromHandle_linksocks_ReverseTokenResult(handle)
5425
- op.Token = C.GoString(val)
5438
+ C.PyEval_RestoreThread(_saved_thread)
5439
+ if __err != nil {
5440
+ estr := C.CString(__err.Error())
5441
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5442
+ return estr
5443
+ }
5444
+ return C.CString("")
5426
5445
  }
5427
5446
 
5428
- //export linksocks_ReverseTokenResult_Port_Get
5429
- func linksocks_ReverseTokenResult_Port_Get(handle CGoHandle) C.longlong {
5430
- op := ptrFromHandle_linksocks_ReverseTokenResult(handle)
5431
- return C.longlong(op.Port)
5432
- }
5447
+ //export linksocks_Relay_HandleRemoteTCPForward
5448
+ func linksocks_Relay_HandleRemoteTCPForward(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, remoteConn CGoHandle, channelID CGoHandle) *C.char {
5449
+ _saved_thread := C.PyEval_SaveThread()
5450
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
5451
+ if __err != nil {
5452
+ return errorGoToPy(nil)
5453
+ }
5454
+ __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleRemoteTCPForward(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), ptrFromHandle_net_Conn(remoteConn), deptrFromHandle_uuid_UUID(channelID))
5433
5455
 
5434
- //export linksocks_ReverseTokenResult_Port_Set
5435
- func linksocks_ReverseTokenResult_Port_Set(handle CGoHandle, val C.longlong) {
5436
- op := ptrFromHandle_linksocks_ReverseTokenResult(handle)
5437
- op.Port = int(val)
5456
+ C.PyEval_RestoreThread(_saved_thread)
5457
+ if __err != nil {
5458
+ estr := C.CString(__err.Error())
5459
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5460
+ return estr
5461
+ }
5462
+ return C.CString("")
5438
5463
  }
5439
5464
 
5440
- // --- wrapping struct: linksocks.AuthResponseMessage ---
5441
- //
5442
- //export linksocks_AuthResponseMessage_CTor
5443
- func linksocks_AuthResponseMessage_CTor() CGoHandle {
5444
- return CGoHandle(handleFromPtr_linksocks_AuthResponseMessage(&linksocks.AuthResponseMessage{}))
5445
- }
5465
+ //export linksocks_Relay_HandleRemoteUDPForward
5466
+ func linksocks_Relay_HandleRemoteUDPForward(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, udpConn CGoHandle, channelID CGoHandle) *C.char {
5467
+ _saved_thread := C.PyEval_SaveThread()
5468
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
5469
+ if __err != nil {
5470
+ return errorGoToPy(nil)
5471
+ }
5472
+ __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleRemoteUDPForward(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), ptrFromHandle_Ptr_net_UDPConn(udpConn), deptrFromHandle_uuid_UUID(channelID))
5446
5473
 
5447
- //export linksocks_AuthResponseMessage_Success_Get
5448
- func linksocks_AuthResponseMessage_Success_Get(handle CGoHandle) C.char {
5449
- op := ptrFromHandle_linksocks_AuthResponseMessage(handle)
5450
- return boolGoToPy(op.Success)
5474
+ C.PyEval_RestoreThread(_saved_thread)
5475
+ if __err != nil {
5476
+ estr := C.CString(__err.Error())
5477
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5478
+ return estr
5479
+ }
5480
+ return C.CString("")
5451
5481
  }
5452
5482
 
5453
- //export linksocks_AuthResponseMessage_Success_Set
5454
- func linksocks_AuthResponseMessage_Success_Set(handle CGoHandle, val C.char) {
5455
- op := ptrFromHandle_linksocks_AuthResponseMessage(handle)
5456
- op.Success = boolPyToGo(val)
5457
- }
5483
+ //export linksocks_Relay_HandleSocksTCPForward
5484
+ func linksocks_Relay_HandleSocksTCPForward(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, socksConn CGoHandle, channelID CGoHandle) *C.char {
5485
+ _saved_thread := C.PyEval_SaveThread()
5486
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
5487
+ if __err != nil {
5488
+ return errorGoToPy(nil)
5489
+ }
5490
+ __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleSocksTCPForward(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), ptrFromHandle_net_Conn(socksConn), deptrFromHandle_uuid_UUID(channelID))
5458
5491
 
5459
- //export linksocks_AuthResponseMessage_Error_Get
5460
- func linksocks_AuthResponseMessage_Error_Get(handle CGoHandle) *C.char {
5461
- op := ptrFromHandle_linksocks_AuthResponseMessage(handle)
5462
- return C.CString(op.Error)
5492
+ C.PyEval_RestoreThread(_saved_thread)
5493
+ if __err != nil {
5494
+ estr := C.CString(__err.Error())
5495
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5496
+ return estr
5497
+ }
5498
+ return C.CString("")
5463
5499
  }
5464
5500
 
5465
- //export linksocks_AuthResponseMessage_Error_Set
5466
- func linksocks_AuthResponseMessage_Error_Set(handle CGoHandle, val *C.char) {
5467
- op := ptrFromHandle_linksocks_AuthResponseMessage(handle)
5468
- op.Error = C.GoString(val)
5501
+ //export linksocks_Relay_HandleSocksUDPForward
5502
+ func linksocks_Relay_HandleSocksUDPForward(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, udpConn CGoHandle, socksConn CGoHandle, channelID CGoHandle) *C.char {
5503
+ _saved_thread := C.PyEval_SaveThread()
5504
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
5505
+ if __err != nil {
5506
+ return errorGoToPy(nil)
5507
+ }
5508
+ __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleSocksUDPForward(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), ptrFromHandle_Ptr_net_UDPConn(udpConn), ptrFromHandle_net_Conn(socksConn), deptrFromHandle_uuid_UUID(channelID))
5509
+
5510
+ C.PyEval_RestoreThread(_saved_thread)
5511
+ if __err != nil {
5512
+ estr := C.CString(__err.Error())
5513
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5514
+ return estr
5515
+ }
5516
+ return C.CString("")
5469
5517
  }
5470
5518
 
5471
- //export linksocks_AuthResponseMessage_GetType
5472
- func linksocks_AuthResponseMessage_GetType(_handle CGoHandle) *C.char {
5519
+ //export linksocks_Relay_Close
5520
+ func linksocks_Relay_Close(_handle CGoHandle, goRun C.char) {
5473
5521
  _saved_thread := C.PyEval_SaveThread()
5474
5522
  defer C.PyEval_RestoreThread(_saved_thread)
5475
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.AuthResponseMessage")
5523
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
5476
5524
  if __err != nil {
5477
- return C.CString("")
5525
+ return
5478
5526
  }
5479
- return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.AuthResponseMessage{})).(*linksocks.AuthResponseMessage).GetType())
5527
+ if boolPyToGo(goRun) {
5528
+ go gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).Close()
5529
+ } else {
5530
+ gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).Close()
5531
+ }
5532
+ }
5480
5533
 
5534
+ //export linksocks_Relay_SetConnectionSuccess
5535
+ func linksocks_Relay_SetConnectionSuccess(_handle CGoHandle, channelID CGoHandle, goRun C.char) {
5536
+ _saved_thread := C.PyEval_SaveThread()
5537
+ defer C.PyEval_RestoreThread(_saved_thread)
5538
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
5539
+ if __err != nil {
5540
+ return
5541
+ }
5542
+ if boolPyToGo(goRun) {
5543
+ go gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).SetConnectionSuccess(deptrFromHandle_uuid_UUID(channelID))
5544
+ } else {
5545
+ gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).SetConnectionSuccess(deptrFromHandle_uuid_UUID(channelID))
5546
+ }
5481
5547
  }
5482
5548
 
5483
- // --- wrapping struct: linksocks.ClientOption ---
5549
+ // --- wrapping struct: linksocks.AuthMessage ---
5484
5550
  //
5485
- //export linksocks_ClientOption_CTor
5486
- func linksocks_ClientOption_CTor() CGoHandle {
5487
- return CGoHandle(handleFromPtr_linksocks_ClientOption(&linksocks.ClientOption{}))
5551
+ //export linksocks_AuthMessage_CTor
5552
+ func linksocks_AuthMessage_CTor() CGoHandle {
5553
+ return CGoHandle(handleFromPtr_linksocks_AuthMessage(&linksocks.AuthMessage{}))
5488
5554
  }
5489
5555
 
5490
- //export linksocks_ClientOption_WSURL_Get
5491
- func linksocks_ClientOption_WSURL_Get(handle CGoHandle) *C.char {
5492
- op := ptrFromHandle_linksocks_ClientOption(handle)
5493
- return C.CString(op.WSURL)
5556
+ //export linksocks_AuthMessage_Token_Get
5557
+ func linksocks_AuthMessage_Token_Get(handle CGoHandle) *C.char {
5558
+ op := ptrFromHandle_linksocks_AuthMessage(handle)
5559
+ return C.CString(op.Token)
5494
5560
  }
5495
5561
 
5496
- //export linksocks_ClientOption_WSURL_Set
5497
- func linksocks_ClientOption_WSURL_Set(handle CGoHandle, val *C.char) {
5498
- op := ptrFromHandle_linksocks_ClientOption(handle)
5499
- op.WSURL = C.GoString(val)
5562
+ //export linksocks_AuthMessage_Token_Set
5563
+ func linksocks_AuthMessage_Token_Set(handle CGoHandle, val *C.char) {
5564
+ op := ptrFromHandle_linksocks_AuthMessage(handle)
5565
+ op.Token = C.GoString(val)
5500
5566
  }
5501
5567
 
5502
- //export linksocks_ClientOption_Reverse_Get
5503
- func linksocks_ClientOption_Reverse_Get(handle CGoHandle) C.char {
5504
- op := ptrFromHandle_linksocks_ClientOption(handle)
5568
+ //export linksocks_AuthMessage_Reverse_Get
5569
+ func linksocks_AuthMessage_Reverse_Get(handle CGoHandle) C.char {
5570
+ op := ptrFromHandle_linksocks_AuthMessage(handle)
5505
5571
  return boolGoToPy(op.Reverse)
5506
5572
  }
5507
5573
 
5508
- //export linksocks_ClientOption_Reverse_Set
5509
- func linksocks_ClientOption_Reverse_Set(handle CGoHandle, val C.char) {
5510
- op := ptrFromHandle_linksocks_ClientOption(handle)
5574
+ //export linksocks_AuthMessage_Reverse_Set
5575
+ func linksocks_AuthMessage_Reverse_Set(handle CGoHandle, val C.char) {
5576
+ op := ptrFromHandle_linksocks_AuthMessage(handle)
5511
5577
  op.Reverse = boolPyToGo(val)
5512
5578
  }
5513
5579
 
5514
- //export linksocks_ClientOption_SocksHost_Get
5515
- func linksocks_ClientOption_SocksHost_Get(handle CGoHandle) *C.char {
5516
- op := ptrFromHandle_linksocks_ClientOption(handle)
5517
- return C.CString(op.SocksHost)
5580
+ //export linksocks_AuthMessage_Instance_Get
5581
+ func linksocks_AuthMessage_Instance_Get(handle CGoHandle) CGoHandle {
5582
+ op := ptrFromHandle_linksocks_AuthMessage(handle)
5583
+ return handleFromPtr_uuid_UUID(&op.Instance)
5518
5584
  }
5519
5585
 
5520
- //export linksocks_ClientOption_SocksHost_Set
5521
- func linksocks_ClientOption_SocksHost_Set(handle CGoHandle, val *C.char) {
5522
- op := ptrFromHandle_linksocks_ClientOption(handle)
5523
- op.SocksHost = C.GoString(val)
5586
+ //export linksocks_AuthMessage_GetType
5587
+ func linksocks_AuthMessage_GetType(_handle CGoHandle) *C.char {
5588
+ _saved_thread := C.PyEval_SaveThread()
5589
+ defer C.PyEval_RestoreThread(_saved_thread)
5590
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.AuthMessage")
5591
+ if __err != nil {
5592
+ return C.CString("")
5593
+ }
5594
+ return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.AuthMessage{})).(*linksocks.AuthMessage).GetType())
5595
+
5524
5596
  }
5525
5597
 
5526
- //export linksocks_ClientOption_SocksPort_Get
5527
- func linksocks_ClientOption_SocksPort_Get(handle CGoHandle) C.longlong {
5528
- op := ptrFromHandle_linksocks_ClientOption(handle)
5529
- return C.longlong(op.SocksPort)
5598
+ // --- wrapping struct: linksocks.ConnectorMessage ---
5599
+ //
5600
+ //export linksocks_ConnectorMessage_CTor
5601
+ func linksocks_ConnectorMessage_CTor() CGoHandle {
5602
+ return CGoHandle(handleFromPtr_linksocks_ConnectorMessage(&linksocks.ConnectorMessage{}))
5530
5603
  }
5531
5604
 
5532
- //export linksocks_ClientOption_SocksPort_Set
5533
- func linksocks_ClientOption_SocksPort_Set(handle CGoHandle, val C.longlong) {
5534
- op := ptrFromHandle_linksocks_ClientOption(handle)
5535
- op.SocksPort = int(val)
5605
+ //export linksocks_ConnectorMessage_ChannelID_Get
5606
+ func linksocks_ConnectorMessage_ChannelID_Get(handle CGoHandle) CGoHandle {
5607
+ op := ptrFromHandle_linksocks_ConnectorMessage(handle)
5608
+ return handleFromPtr_uuid_UUID(&op.ChannelID)
5536
5609
  }
5537
5610
 
5538
- //export linksocks_ClientOption_SocksUsername_Get
5539
- func linksocks_ClientOption_SocksUsername_Get(handle CGoHandle) *C.char {
5540
- op := ptrFromHandle_linksocks_ClientOption(handle)
5541
- return C.CString(op.SocksUsername)
5611
+ //export linksocks_ConnectorMessage_ConnectorToken_Get
5612
+ func linksocks_ConnectorMessage_ConnectorToken_Get(handle CGoHandle) *C.char {
5613
+ op := ptrFromHandle_linksocks_ConnectorMessage(handle)
5614
+ return C.CString(op.ConnectorToken)
5542
5615
  }
5543
5616
 
5544
- //export linksocks_ClientOption_SocksUsername_Set
5545
- func linksocks_ClientOption_SocksUsername_Set(handle CGoHandle, val *C.char) {
5546
- op := ptrFromHandle_linksocks_ClientOption(handle)
5547
- op.SocksUsername = C.GoString(val)
5617
+ //export linksocks_ConnectorMessage_ConnectorToken_Set
5618
+ func linksocks_ConnectorMessage_ConnectorToken_Set(handle CGoHandle, val *C.char) {
5619
+ op := ptrFromHandle_linksocks_ConnectorMessage(handle)
5620
+ op.ConnectorToken = C.GoString(val)
5548
5621
  }
5549
5622
 
5550
- //export linksocks_ClientOption_SocksPassword_Get
5551
- func linksocks_ClientOption_SocksPassword_Get(handle CGoHandle) *C.char {
5552
- op := ptrFromHandle_linksocks_ClientOption(handle)
5553
- return C.CString(op.SocksPassword)
5623
+ //export linksocks_ConnectorMessage_Operation_Get
5624
+ func linksocks_ConnectorMessage_Operation_Get(handle CGoHandle) *C.char {
5625
+ op := ptrFromHandle_linksocks_ConnectorMessage(handle)
5626
+ return C.CString(op.Operation)
5554
5627
  }
5555
5628
 
5556
- //export linksocks_ClientOption_SocksPassword_Set
5557
- func linksocks_ClientOption_SocksPassword_Set(handle CGoHandle, val *C.char) {
5558
- op := ptrFromHandle_linksocks_ClientOption(handle)
5559
- op.SocksPassword = C.GoString(val)
5560
- }
5561
-
5562
- //export linksocks_ClientOption_SocksWaitServer_Get
5563
- func linksocks_ClientOption_SocksWaitServer_Get(handle CGoHandle) C.char {
5564
- op := ptrFromHandle_linksocks_ClientOption(handle)
5565
- return boolGoToPy(op.SocksWaitServer)
5566
- }
5567
-
5568
- //export linksocks_ClientOption_SocksWaitServer_Set
5569
- func linksocks_ClientOption_SocksWaitServer_Set(handle CGoHandle, val C.char) {
5570
- op := ptrFromHandle_linksocks_ClientOption(handle)
5571
- op.SocksWaitServer = boolPyToGo(val)
5572
- }
5573
-
5574
- //export linksocks_ClientOption_Reconnect_Get
5575
- func linksocks_ClientOption_Reconnect_Get(handle CGoHandle) C.char {
5576
- op := ptrFromHandle_linksocks_ClientOption(handle)
5577
- return boolGoToPy(op.Reconnect)
5578
- }
5579
-
5580
- //export linksocks_ClientOption_Reconnect_Set
5581
- func linksocks_ClientOption_Reconnect_Set(handle CGoHandle, val C.char) {
5582
- op := ptrFromHandle_linksocks_ClientOption(handle)
5583
- op.Reconnect = boolPyToGo(val)
5584
- }
5585
-
5586
- //export linksocks_ClientOption_ReconnectDelay_Get
5587
- func linksocks_ClientOption_ReconnectDelay_Get(handle CGoHandle) C.longlong {
5588
- op := ptrFromHandle_linksocks_ClientOption(handle)
5589
- return C.longlong(int64(op.ReconnectDelay))
5590
- }
5591
-
5592
- //export linksocks_ClientOption_ReconnectDelay_Set
5593
- func linksocks_ClientOption_ReconnectDelay_Set(handle CGoHandle, val C.longlong) {
5594
- op := ptrFromHandle_linksocks_ClientOption(handle)
5595
- op.ReconnectDelay = time.Duration(int64(val))
5596
- }
5597
-
5598
- //export linksocks_ClientOption_Logger_Get
5599
- func linksocks_ClientOption_Logger_Get(handle CGoHandle) CGoHandle {
5600
- op := ptrFromHandle_linksocks_ClientOption(handle)
5601
- return handleFromPtr_zerolog_Logger(&op.Logger)
5602
- }
5603
-
5604
- //export linksocks_ClientOption_Logger_Set
5605
- func linksocks_ClientOption_Logger_Set(handle CGoHandle, val CGoHandle) {
5606
- op := ptrFromHandle_linksocks_ClientOption(handle)
5607
- op.Logger = *ptrFromHandle_zerolog_Logger(val)
5608
- }
5609
-
5610
- //export linksocks_ClientOption_BufferSize_Get
5611
- func linksocks_ClientOption_BufferSize_Get(handle CGoHandle) C.longlong {
5612
- op := ptrFromHandle_linksocks_ClientOption(handle)
5613
- return C.longlong(op.BufferSize)
5614
- }
5615
-
5616
- //export linksocks_ClientOption_BufferSize_Set
5617
- func linksocks_ClientOption_BufferSize_Set(handle CGoHandle, val C.longlong) {
5618
- op := ptrFromHandle_linksocks_ClientOption(handle)
5619
- op.BufferSize = int(val)
5620
- }
5621
-
5622
- //export linksocks_ClientOption_ChannelTimeout_Get
5623
- func linksocks_ClientOption_ChannelTimeout_Get(handle CGoHandle) C.longlong {
5624
- op := ptrFromHandle_linksocks_ClientOption(handle)
5625
- return C.longlong(int64(op.ChannelTimeout))
5626
- }
5627
-
5628
- //export linksocks_ClientOption_ChannelTimeout_Set
5629
- func linksocks_ClientOption_ChannelTimeout_Set(handle CGoHandle, val C.longlong) {
5630
- op := ptrFromHandle_linksocks_ClientOption(handle)
5631
- op.ChannelTimeout = time.Duration(int64(val))
5632
- }
5633
-
5634
- //export linksocks_ClientOption_ConnectTimeout_Get
5635
- func linksocks_ClientOption_ConnectTimeout_Get(handle CGoHandle) C.longlong {
5636
- op := ptrFromHandle_linksocks_ClientOption(handle)
5637
- return C.longlong(int64(op.ConnectTimeout))
5638
- }
5639
-
5640
- //export linksocks_ClientOption_ConnectTimeout_Set
5641
- func linksocks_ClientOption_ConnectTimeout_Set(handle CGoHandle, val C.longlong) {
5642
- op := ptrFromHandle_linksocks_ClientOption(handle)
5643
- op.ConnectTimeout = time.Duration(int64(val))
5644
- }
5645
-
5646
- //export linksocks_ClientOption_Threads_Get
5647
- func linksocks_ClientOption_Threads_Get(handle CGoHandle) C.longlong {
5648
- op := ptrFromHandle_linksocks_ClientOption(handle)
5649
- return C.longlong(op.Threads)
5650
- }
5651
-
5652
- //export linksocks_ClientOption_Threads_Set
5653
- func linksocks_ClientOption_Threads_Set(handle CGoHandle, val C.longlong) {
5654
- op := ptrFromHandle_linksocks_ClientOption(handle)
5655
- op.Threads = int(val)
5656
- }
5657
-
5658
- //export linksocks_ClientOption_FastOpen_Get
5659
- func linksocks_ClientOption_FastOpen_Get(handle CGoHandle) C.char {
5660
- op := ptrFromHandle_linksocks_ClientOption(handle)
5661
- return boolGoToPy(op.FastOpen)
5662
- }
5663
-
5664
- //export linksocks_ClientOption_FastOpen_Set
5665
- func linksocks_ClientOption_FastOpen_Set(handle CGoHandle, val C.char) {
5666
- op := ptrFromHandle_linksocks_ClientOption(handle)
5667
- op.FastOpen = boolPyToGo(val)
5668
- }
5669
-
5670
- //export linksocks_ClientOption_UpstreamProxy_Get
5671
- func linksocks_ClientOption_UpstreamProxy_Get(handle CGoHandle) *C.char {
5672
- op := ptrFromHandle_linksocks_ClientOption(handle)
5673
- return C.CString(op.UpstreamProxy)
5674
- }
5675
-
5676
- //export linksocks_ClientOption_UpstreamProxy_Set
5677
- func linksocks_ClientOption_UpstreamProxy_Set(handle CGoHandle, val *C.char) {
5678
- op := ptrFromHandle_linksocks_ClientOption(handle)
5679
- op.UpstreamProxy = C.GoString(val)
5680
- }
5681
-
5682
- //export linksocks_ClientOption_UpstreamUsername_Get
5683
- func linksocks_ClientOption_UpstreamUsername_Get(handle CGoHandle) *C.char {
5684
- op := ptrFromHandle_linksocks_ClientOption(handle)
5685
- return C.CString(op.UpstreamUsername)
5686
- }
5687
-
5688
- //export linksocks_ClientOption_UpstreamUsername_Set
5689
- func linksocks_ClientOption_UpstreamUsername_Set(handle CGoHandle, val *C.char) {
5690
- op := ptrFromHandle_linksocks_ClientOption(handle)
5691
- op.UpstreamUsername = C.GoString(val)
5692
- }
5693
-
5694
- //export linksocks_ClientOption_UpstreamPassword_Get
5695
- func linksocks_ClientOption_UpstreamPassword_Get(handle CGoHandle) *C.char {
5696
- op := ptrFromHandle_linksocks_ClientOption(handle)
5697
- return C.CString(op.UpstreamPassword)
5698
- }
5699
-
5700
- //export linksocks_ClientOption_UpstreamPassword_Set
5701
- func linksocks_ClientOption_UpstreamPassword_Set(handle CGoHandle, val *C.char) {
5702
- op := ptrFromHandle_linksocks_ClientOption(handle)
5703
- op.UpstreamPassword = C.GoString(val)
5704
- }
5705
-
5706
- //export linksocks_ClientOption_NoEnvProxy_Get
5707
- func linksocks_ClientOption_NoEnvProxy_Get(handle CGoHandle) C.char {
5708
- op := ptrFromHandle_linksocks_ClientOption(handle)
5709
- return boolGoToPy(op.NoEnvProxy)
5710
- }
5711
-
5712
- //export linksocks_ClientOption_NoEnvProxy_Set
5713
- func linksocks_ClientOption_NoEnvProxy_Set(handle CGoHandle, val C.char) {
5714
- op := ptrFromHandle_linksocks_ClientOption(handle)
5715
- op.NoEnvProxy = boolPyToGo(val)
5629
+ //export linksocks_ConnectorMessage_Operation_Set
5630
+ func linksocks_ConnectorMessage_Operation_Set(handle CGoHandle, val *C.char) {
5631
+ op := ptrFromHandle_linksocks_ConnectorMessage(handle)
5632
+ op.Operation = C.GoString(val)
5716
5633
  }
5717
5634
 
5718
- //export linksocks_ClientOption_WithWSURL
5719
- func linksocks_ClientOption_WithWSURL(_handle CGoHandle, url *C.char) CGoHandle {
5635
+ //export linksocks_ConnectorMessage_GetType
5636
+ func linksocks_ConnectorMessage_GetType(_handle CGoHandle) *C.char {
5720
5637
  _saved_thread := C.PyEval_SaveThread()
5721
5638
  defer C.PyEval_RestoreThread(_saved_thread)
5722
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5639
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ConnectorMessage")
5723
5640
  if __err != nil {
5724
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5641
+ return C.CString("")
5725
5642
  }
5726
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithWSURL(C.GoString(url)))
5643
+ return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ConnectorMessage{})).(*linksocks.ConnectorMessage).GetType())
5727
5644
 
5728
5645
  }
5729
5646
 
5730
- //export linksocks_ClientOption_WithReverse
5731
- func linksocks_ClientOption_WithReverse(_handle CGoHandle, reverse C.char) CGoHandle {
5647
+ // --- wrapping struct: linksocks.DynamicForwarder ---
5648
+ //
5649
+ //export linksocks_DynamicForwarder_CTor
5650
+ func linksocks_DynamicForwarder_CTor() CGoHandle {
5651
+ return CGoHandle(handleFromPtr_linksocks_DynamicForwarder(&linksocks.DynamicForwarder{}))
5652
+ }
5653
+
5654
+ //export linksocks_DynamicForwarder_ProcessReads
5655
+ func linksocks_DynamicForwarder_ProcessReads(_handle CGoHandle, conn CGoHandle, goRun C.char) {
5732
5656
  _saved_thread := C.PyEval_SaveThread()
5733
5657
  defer C.PyEval_RestoreThread(_saved_thread)
5734
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5658
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.DynamicForwarder")
5735
5659
  if __err != nil {
5736
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5660
+ return
5661
+ }
5662
+ if boolPyToGo(goRun) {
5663
+ go gopyh.Embed(vifc, reflect.TypeOf(linksocks.DynamicForwarder{})).(*linksocks.DynamicForwarder).ProcessReads(ptrFromHandle_io_Reader(conn))
5664
+ } else {
5665
+ gopyh.Embed(vifc, reflect.TypeOf(linksocks.DynamicForwarder{})).(*linksocks.DynamicForwarder).ProcessReads(ptrFromHandle_io_Reader(conn))
5737
5666
  }
5738
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithReverse(boolPyToGo(reverse)))
5739
-
5740
5667
  }
5741
5668
 
5742
- //export linksocks_ClientOption_WithSocksHost
5743
- func linksocks_ClientOption_WithSocksHost(_handle CGoHandle, host *C.char) CGoHandle {
5669
+ //export linksocks_DynamicForwarder_ProcessReadsImmediate
5670
+ func linksocks_DynamicForwarder_ProcessReadsImmediate(_handle CGoHandle, conn CGoHandle, goRun C.char) {
5744
5671
  _saved_thread := C.PyEval_SaveThread()
5745
5672
  defer C.PyEval_RestoreThread(_saved_thread)
5746
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5673
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.DynamicForwarder")
5747
5674
  if __err != nil {
5748
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5675
+ return
5676
+ }
5677
+ if boolPyToGo(goRun) {
5678
+ go gopyh.Embed(vifc, reflect.TypeOf(linksocks.DynamicForwarder{})).(*linksocks.DynamicForwarder).ProcessReadsImmediate(ptrFromHandle_io_Reader(conn))
5679
+ } else {
5680
+ gopyh.Embed(vifc, reflect.TypeOf(linksocks.DynamicForwarder{})).(*linksocks.DynamicForwarder).ProcessReadsImmediate(ptrFromHandle_io_Reader(conn))
5749
5681
  }
5750
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithSocksHost(C.GoString(host)))
5751
-
5752
5682
  }
5753
5683
 
5754
- //export linksocks_ClientOption_WithSocksPort
5755
- func linksocks_ClientOption_WithSocksPort(_handle CGoHandle, port C.longlong) CGoHandle {
5684
+ //export linksocks_DynamicForwarder_ProcessUDPReads
5685
+ func linksocks_DynamicForwarder_ProcessUDPReads(_handle CGoHandle, conn CGoHandle, goRun C.char) {
5756
5686
  _saved_thread := C.PyEval_SaveThread()
5757
5687
  defer C.PyEval_RestoreThread(_saved_thread)
5758
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5688
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.DynamicForwarder")
5759
5689
  if __err != nil {
5760
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5690
+ return
5761
5691
  }
5762
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithSocksPort(int(port)))
5692
+ if boolPyToGo(goRun) {
5693
+ go gopyh.Embed(vifc, reflect.TypeOf(linksocks.DynamicForwarder{})).(*linksocks.DynamicForwarder).ProcessUDPReads(ptrFromHandle_Ptr_net_UDPConn(conn))
5694
+ } else {
5695
+ gopyh.Embed(vifc, reflect.TypeOf(linksocks.DynamicForwarder{})).(*linksocks.DynamicForwarder).ProcessUDPReads(ptrFromHandle_Ptr_net_UDPConn(conn))
5696
+ }
5697
+ }
5763
5698
 
5699
+ // --- wrapping struct: linksocks.LinkSocksServer ---
5700
+ //
5701
+ //export linksocks_LinkSocksServer_CTor
5702
+ func linksocks_LinkSocksServer_CTor() CGoHandle {
5703
+ return CGoHandle(handleFromPtr_linksocks_LinkSocksServer(&linksocks.LinkSocksServer{}))
5764
5704
  }
5765
5705
 
5766
- //export linksocks_ClientOption_WithSocksUsername
5767
- func linksocks_ClientOption_WithSocksUsername(_handle CGoHandle, username *C.char) CGoHandle {
5706
+ //export linksocks_LinkSocksServer_AddReverseToken
5707
+ func linksocks_LinkSocksServer_AddReverseToken(_handle CGoHandle, opts CGoHandle) CGoHandle {
5768
5708
  _saved_thread := C.PyEval_SaveThread()
5769
- defer C.PyEval_RestoreThread(_saved_thread)
5770
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5709
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
5771
5710
  if __err != nil {
5772
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5711
+ return handleFromPtr_Ptr_linksocks_ReverseTokenResult(nil)
5773
5712
  }
5774
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithSocksUsername(C.GoString(username)))
5713
+ cret, __err := gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).AddReverseToken(ptrFromHandle_Ptr_linksocks_ReverseTokenOptions(opts))
5775
5714
 
5715
+ C.PyEval_RestoreThread(_saved_thread)
5716
+ if __err != nil {
5717
+ estr := C.CString(__err.Error())
5718
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5719
+ C.free(unsafe.Pointer(estr))
5720
+ return handleFromPtr_Ptr_linksocks_ReverseTokenResult(nil)
5721
+ }
5722
+ return handleFromPtr_Ptr_linksocks_ReverseTokenResult(cret)
5776
5723
  }
5777
5724
 
5778
- //export linksocks_ClientOption_WithSocksPassword
5779
- func linksocks_ClientOption_WithSocksPassword(_handle CGoHandle, password *C.char) CGoHandle {
5725
+ //export linksocks_LinkSocksServer_AddForwardToken
5726
+ func linksocks_LinkSocksServer_AddForwardToken(_handle CGoHandle, token *C.char) *C.char {
5780
5727
  _saved_thread := C.PyEval_SaveThread()
5781
- defer C.PyEval_RestoreThread(_saved_thread)
5782
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5728
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
5783
5729
  if __err != nil {
5784
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5730
+ return C.CString("")
5785
5731
  }
5786
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithSocksPassword(C.GoString(password)))
5732
+ cret, __err := gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).AddForwardToken(C.GoString(token))
5787
5733
 
5734
+ C.PyEval_RestoreThread(_saved_thread)
5735
+ if __err != nil {
5736
+ estr := C.CString(__err.Error())
5737
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5738
+ C.free(unsafe.Pointer(estr))
5739
+ return C.CString("")
5740
+ }
5741
+ return C.CString(cret)
5788
5742
  }
5789
5743
 
5790
- //export linksocks_ClientOption_WithSocksWaitServer
5791
- func linksocks_ClientOption_WithSocksWaitServer(_handle CGoHandle, wait C.char) CGoHandle {
5744
+ //export linksocks_LinkSocksServer_AddConnectorToken
5745
+ func linksocks_LinkSocksServer_AddConnectorToken(_handle CGoHandle, connectorToken *C.char, reverseToken *C.char) *C.char {
5792
5746
  _saved_thread := C.PyEval_SaveThread()
5793
- defer C.PyEval_RestoreThread(_saved_thread)
5794
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5747
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
5795
5748
  if __err != nil {
5796
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5749
+ return C.CString("")
5797
5750
  }
5798
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithSocksWaitServer(boolPyToGo(wait)))
5751
+ cret, __err := gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).AddConnectorToken(C.GoString(connectorToken), C.GoString(reverseToken))
5799
5752
 
5753
+ C.PyEval_RestoreThread(_saved_thread)
5754
+ if __err != nil {
5755
+ estr := C.CString(__err.Error())
5756
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5757
+ C.free(unsafe.Pointer(estr))
5758
+ return C.CString("")
5759
+ }
5760
+ return C.CString(cret)
5800
5761
  }
5801
5762
 
5802
- //export linksocks_ClientOption_WithReconnect
5803
- func linksocks_ClientOption_WithReconnect(_handle CGoHandle, reconnect C.char) CGoHandle {
5763
+ //export linksocks_LinkSocksServer_RemoveToken
5764
+ func linksocks_LinkSocksServer_RemoveToken(_handle CGoHandle, token *C.char) C.char {
5804
5765
  _saved_thread := C.PyEval_SaveThread()
5805
5766
  defer C.PyEval_RestoreThread(_saved_thread)
5806
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5767
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
5807
5768
  if __err != nil {
5808
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5769
+ return boolGoToPy(false)
5809
5770
  }
5810
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithReconnect(boolPyToGo(reconnect)))
5771
+ return boolGoToPy(gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).RemoveToken(C.GoString(token)))
5811
5772
 
5812
5773
  }
5813
5774
 
5814
- //export linksocks_ClientOption_WithReconnectDelay
5815
- func linksocks_ClientOption_WithReconnectDelay(_handle CGoHandle, delay C.longlong) CGoHandle {
5775
+ //export linksocks_LinkSocksServer_Serve
5776
+ func linksocks_LinkSocksServer_Serve(_handle CGoHandle, ctx CGoHandle) *C.char {
5816
5777
  _saved_thread := C.PyEval_SaveThread()
5817
- defer C.PyEval_RestoreThread(_saved_thread)
5818
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5778
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
5819
5779
  if __err != nil {
5820
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5780
+ return errorGoToPy(nil)
5821
5781
  }
5822
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithReconnectDelay(time.Duration(int64(delay))))
5782
+ __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).Serve(ptrFromHandle_context_Context(ctx))
5823
5783
 
5784
+ C.PyEval_RestoreThread(_saved_thread)
5785
+ if __err != nil {
5786
+ estr := C.CString(__err.Error())
5787
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5788
+ return estr
5789
+ }
5790
+ return C.CString("")
5824
5791
  }
5825
5792
 
5826
- //export linksocks_ClientOption_WithLogger
5827
- func linksocks_ClientOption_WithLogger(_handle CGoHandle, logger CGoHandle) CGoHandle {
5793
+ //export linksocks_LinkSocksServer_WaitReady
5794
+ func linksocks_LinkSocksServer_WaitReady(_handle CGoHandle, ctx CGoHandle, timeout C.longlong) *C.char {
5828
5795
  _saved_thread := C.PyEval_SaveThread()
5829
- defer C.PyEval_RestoreThread(_saved_thread)
5830
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5796
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
5831
5797
  if __err != nil {
5832
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5798
+ return errorGoToPy(nil)
5833
5799
  }
5834
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithLogger(*ptrFromHandle_zerolog_Logger(logger)))
5835
-
5836
- }
5800
+ __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).WaitReady(ptrFromHandle_context_Context(ctx), time.Duration(int64(timeout)))
5837
5801
 
5838
- //export linksocks_ClientOption_WithBufferSize
5839
- func linksocks_ClientOption_WithBufferSize(_handle CGoHandle, size C.longlong) CGoHandle {
5840
- _saved_thread := C.PyEval_SaveThread()
5841
- defer C.PyEval_RestoreThread(_saved_thread)
5842
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5802
+ C.PyEval_RestoreThread(_saved_thread)
5843
5803
  if __err != nil {
5844
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5804
+ estr := C.CString(__err.Error())
5805
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
5806
+ return estr
5845
5807
  }
5846
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithBufferSize(int(size)))
5847
-
5808
+ return C.CString("")
5848
5809
  }
5849
5810
 
5850
- //export linksocks_ClientOption_WithChannelTimeout
5851
- func linksocks_ClientOption_WithChannelTimeout(_handle CGoHandle, timeout C.longlong) CGoHandle {
5811
+ //export linksocks_LinkSocksServer_Close
5812
+ func linksocks_LinkSocksServer_Close(_handle CGoHandle, goRun C.char) {
5852
5813
  _saved_thread := C.PyEval_SaveThread()
5853
5814
  defer C.PyEval_RestoreThread(_saved_thread)
5854
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5815
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
5855
5816
  if __err != nil {
5856
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5817
+ return
5818
+ }
5819
+ if boolPyToGo(goRun) {
5820
+ go gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).Close()
5821
+ } else {
5822
+ gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).Close()
5857
5823
  }
5858
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithChannelTimeout(time.Duration(int64(timeout))))
5859
-
5860
5824
  }
5861
5825
 
5862
- //export linksocks_ClientOption_WithConnectTimeout
5863
- func linksocks_ClientOption_WithConnectTimeout(_handle CGoHandle, timeout C.longlong) CGoHandle {
5826
+ //export linksocks_LinkSocksServer_GetClientCount
5827
+ func linksocks_LinkSocksServer_GetClientCount(_handle CGoHandle) C.longlong {
5864
5828
  _saved_thread := C.PyEval_SaveThread()
5865
5829
  defer C.PyEval_RestoreThread(_saved_thread)
5866
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5830
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
5867
5831
  if __err != nil {
5868
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5832
+ return C.longlong(0)
5869
5833
  }
5870
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithConnectTimeout(time.Duration(int64(timeout))))
5834
+ return C.longlong(gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).GetClientCount())
5871
5835
 
5872
5836
  }
5873
5837
 
5874
- //export linksocks_ClientOption_WithThreads
5875
- func linksocks_ClientOption_WithThreads(_handle CGoHandle, threads C.longlong) CGoHandle {
5838
+ //export linksocks_LinkSocksServer_HasClients
5839
+ func linksocks_LinkSocksServer_HasClients(_handle CGoHandle) C.char {
5876
5840
  _saved_thread := C.PyEval_SaveThread()
5877
5841
  defer C.PyEval_RestoreThread(_saved_thread)
5878
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5842
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
5879
5843
  if __err != nil {
5880
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5844
+ return boolGoToPy(false)
5881
5845
  }
5882
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithThreads(int(threads)))
5846
+ return boolGoToPy(gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).HasClients())
5883
5847
 
5884
5848
  }
5885
5849
 
5886
- //export linksocks_ClientOption_WithFastOpen
5887
- func linksocks_ClientOption_WithFastOpen(_handle CGoHandle, fastOpen C.char) CGoHandle {
5850
+ //export linksocks_LinkSocksServer_GetTokenClientCount
5851
+ func linksocks_LinkSocksServer_GetTokenClientCount(_handle CGoHandle, token *C.char) C.longlong {
5888
5852
  _saved_thread := C.PyEval_SaveThread()
5889
5853
  defer C.PyEval_RestoreThread(_saved_thread)
5890
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5854
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
5891
5855
  if __err != nil {
5892
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5856
+ return C.longlong(0)
5893
5857
  }
5894
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithFastOpen(boolPyToGo(fastOpen)))
5858
+ return C.longlong(gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).GetTokenClientCount(C.GoString(token)))
5895
5859
 
5896
5860
  }
5897
5861
 
5898
- //export linksocks_ClientOption_WithUpstreamProxy
5899
- func linksocks_ClientOption_WithUpstreamProxy(_handle CGoHandle, proxy *C.char) CGoHandle {
5900
- _saved_thread := C.PyEval_SaveThread()
5901
- defer C.PyEval_RestoreThread(_saved_thread)
5902
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5903
- if __err != nil {
5904
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5905
- }
5906
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithUpstreamProxy(C.GoString(proxy)))
5862
+ // --- wrapping struct: linksocks.LogMessage ---
5863
+ //
5864
+ //export linksocks_LogMessage_CTor
5865
+ func linksocks_LogMessage_CTor() CGoHandle {
5866
+ return CGoHandle(handleFromPtr_linksocks_LogMessage(&linksocks.LogMessage{}))
5867
+ }
5868
+
5869
+ //export linksocks_LogMessage_Level_Get
5870
+ func linksocks_LogMessage_Level_Get(handle CGoHandle) *C.char {
5871
+ op := ptrFromHandle_linksocks_LogMessage(handle)
5872
+ return C.CString(op.Level)
5873
+ }
5907
5874
 
5875
+ //export linksocks_LogMessage_Level_Set
5876
+ func linksocks_LogMessage_Level_Set(handle CGoHandle, val *C.char) {
5877
+ op := ptrFromHandle_linksocks_LogMessage(handle)
5878
+ op.Level = C.GoString(val)
5908
5879
  }
5909
5880
 
5910
- //export linksocks_ClientOption_WithUpstreamAuth
5911
- func linksocks_ClientOption_WithUpstreamAuth(_handle CGoHandle, username *C.char, password *C.char) CGoHandle {
5912
- _saved_thread := C.PyEval_SaveThread()
5913
- defer C.PyEval_RestoreThread(_saved_thread)
5914
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5915
- if __err != nil {
5916
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5917
- }
5918
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithUpstreamAuth(C.GoString(username), C.GoString(password)))
5881
+ //export linksocks_LogMessage_Msg_Get
5882
+ func linksocks_LogMessage_Msg_Get(handle CGoHandle) *C.char {
5883
+ op := ptrFromHandle_linksocks_LogMessage(handle)
5884
+ return C.CString(op.Msg)
5885
+ }
5919
5886
 
5887
+ //export linksocks_LogMessage_Msg_Set
5888
+ func linksocks_LogMessage_Msg_Set(handle CGoHandle, val *C.char) {
5889
+ op := ptrFromHandle_linksocks_LogMessage(handle)
5890
+ op.Msg = C.GoString(val)
5920
5891
  }
5921
5892
 
5922
- //export linksocks_ClientOption_WithNoEnvProxy
5923
- func linksocks_ClientOption_WithNoEnvProxy(_handle CGoHandle, noEnvProxy C.char) CGoHandle {
5893
+ //export linksocks_LogMessage_GetType
5894
+ func linksocks_LogMessage_GetType(_handle CGoHandle) *C.char {
5924
5895
  _saved_thread := C.PyEval_SaveThread()
5925
5896
  defer C.PyEval_RestoreThread(_saved_thread)
5926
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
5897
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LogMessage")
5927
5898
  if __err != nil {
5928
- return handleFromPtr_Ptr_linksocks_ClientOption(nil)
5899
+ return C.CString("")
5929
5900
  }
5930
- return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithNoEnvProxy(boolPyToGo(noEnvProxy)))
5901
+ return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.LogMessage{})).(*linksocks.LogMessage).GetType())
5931
5902
 
5932
5903
  }
5933
5904
 
5934
- // --- wrapping struct: linksocks.DisconnectMessage ---
5905
+ // --- wrapping struct: linksocks.TokenResponse ---
5935
5906
  //
5936
- //export linksocks_DisconnectMessage_CTor
5937
- func linksocks_DisconnectMessage_CTor() CGoHandle {
5938
- return CGoHandle(handleFromPtr_linksocks_DisconnectMessage(&linksocks.DisconnectMessage{}))
5907
+ //export linksocks_TokenResponse_CTor
5908
+ func linksocks_TokenResponse_CTor() CGoHandle {
5909
+ return CGoHandle(handleFromPtr_linksocks_TokenResponse(&linksocks.TokenResponse{}))
5939
5910
  }
5940
5911
 
5941
- //export linksocks_DisconnectMessage_ChannelID_Get
5942
- func linksocks_DisconnectMessage_ChannelID_Get(handle CGoHandle) CGoHandle {
5943
- op := ptrFromHandle_linksocks_DisconnectMessage(handle)
5944
- return handleFromPtr_uuid_UUID(&op.ChannelID)
5912
+ //export linksocks_TokenResponse_Success_Get
5913
+ func linksocks_TokenResponse_Success_Get(handle CGoHandle) C.char {
5914
+ op := ptrFromHandle_linksocks_TokenResponse(handle)
5915
+ return boolGoToPy(op.Success)
5945
5916
  }
5946
5917
 
5947
- //export linksocks_DisconnectMessage_Error_Get
5948
- func linksocks_DisconnectMessage_Error_Get(handle CGoHandle) *C.char {
5949
- op := ptrFromHandle_linksocks_DisconnectMessage(handle)
5918
+ //export linksocks_TokenResponse_Success_Set
5919
+ func linksocks_TokenResponse_Success_Set(handle CGoHandle, val C.char) {
5920
+ op := ptrFromHandle_linksocks_TokenResponse(handle)
5921
+ op.Success = boolPyToGo(val)
5922
+ }
5923
+
5924
+ //export linksocks_TokenResponse_Token_Get
5925
+ func linksocks_TokenResponse_Token_Get(handle CGoHandle) *C.char {
5926
+ op := ptrFromHandle_linksocks_TokenResponse(handle)
5927
+ return C.CString(op.Token)
5928
+ }
5929
+
5930
+ //export linksocks_TokenResponse_Token_Set
5931
+ func linksocks_TokenResponse_Token_Set(handle CGoHandle, val *C.char) {
5932
+ op := ptrFromHandle_linksocks_TokenResponse(handle)
5933
+ op.Token = C.GoString(val)
5934
+ }
5935
+
5936
+ //export linksocks_TokenResponse_Port_Get
5937
+ func linksocks_TokenResponse_Port_Get(handle CGoHandle) C.longlong {
5938
+ op := ptrFromHandle_linksocks_TokenResponse(handle)
5939
+ return C.longlong(op.Port)
5940
+ }
5941
+
5942
+ //export linksocks_TokenResponse_Port_Set
5943
+ func linksocks_TokenResponse_Port_Set(handle CGoHandle, val C.longlong) {
5944
+ op := ptrFromHandle_linksocks_TokenResponse(handle)
5945
+ op.Port = int(val)
5946
+ }
5947
+
5948
+ //export linksocks_TokenResponse_Error_Get
5949
+ func linksocks_TokenResponse_Error_Get(handle CGoHandle) *C.char {
5950
+ op := ptrFromHandle_linksocks_TokenResponse(handle)
5950
5951
  return C.CString(op.Error)
5951
5952
  }
5952
5953
 
5953
- //export linksocks_DisconnectMessage_Error_Set
5954
- func linksocks_DisconnectMessage_Error_Set(handle CGoHandle, val *C.char) {
5955
- op := ptrFromHandle_linksocks_DisconnectMessage(handle)
5954
+ //export linksocks_TokenResponse_Error_Set
5955
+ func linksocks_TokenResponse_Error_Set(handle CGoHandle, val *C.char) {
5956
+ op := ptrFromHandle_linksocks_TokenResponse(handle)
5956
5957
  op.Error = C.GoString(val)
5957
5958
  }
5958
5959
 
5959
- //export linksocks_DisconnectMessage_GetType
5960
- func linksocks_DisconnectMessage_GetType(_handle CGoHandle) *C.char {
5961
- _saved_thread := C.PyEval_SaveThread()
5962
- defer C.PyEval_RestoreThread(_saved_thread)
5963
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.DisconnectMessage")
5964
- if __err != nil {
5965
- return C.CString("")
5966
- }
5967
- return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.DisconnectMessage{})).(*linksocks.DisconnectMessage).GetType())
5960
+ // --- wrapping struct: linksocks.ClientOption ---
5961
+ //
5962
+ //export linksocks_ClientOption_CTor
5963
+ func linksocks_ClientOption_CTor() CGoHandle {
5964
+ return CGoHandle(handleFromPtr_linksocks_ClientOption(&linksocks.ClientOption{}))
5965
+ }
5966
+
5967
+ //export linksocks_ClientOption_WSURL_Get
5968
+ func linksocks_ClientOption_WSURL_Get(handle CGoHandle) *C.char {
5969
+ op := ptrFromHandle_linksocks_ClientOption(handle)
5970
+ return C.CString(op.WSURL)
5971
+ }
5972
+
5973
+ //export linksocks_ClientOption_WSURL_Set
5974
+ func linksocks_ClientOption_WSURL_Set(handle CGoHandle, val *C.char) {
5975
+ op := ptrFromHandle_linksocks_ClientOption(handle)
5976
+ op.WSURL = C.GoString(val)
5977
+ }
5978
+
5979
+ //export linksocks_ClientOption_Reverse_Get
5980
+ func linksocks_ClientOption_Reverse_Get(handle CGoHandle) C.char {
5981
+ op := ptrFromHandle_linksocks_ClientOption(handle)
5982
+ return boolGoToPy(op.Reverse)
5983
+ }
5968
5984
 
5985
+ //export linksocks_ClientOption_Reverse_Set
5986
+ func linksocks_ClientOption_Reverse_Set(handle CGoHandle, val C.char) {
5987
+ op := ptrFromHandle_linksocks_ClientOption(handle)
5988
+ op.Reverse = boolPyToGo(val)
5989
+ }
5990
+
5991
+ //export linksocks_ClientOption_SocksHost_Get
5992
+ func linksocks_ClientOption_SocksHost_Get(handle CGoHandle) *C.char {
5993
+ op := ptrFromHandle_linksocks_ClientOption(handle)
5994
+ return C.CString(op.SocksHost)
5995
+ }
5996
+
5997
+ //export linksocks_ClientOption_SocksHost_Set
5998
+ func linksocks_ClientOption_SocksHost_Set(handle CGoHandle, val *C.char) {
5999
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6000
+ op.SocksHost = C.GoString(val)
6001
+ }
6002
+
6003
+ //export linksocks_ClientOption_SocksPort_Get
6004
+ func linksocks_ClientOption_SocksPort_Get(handle CGoHandle) C.longlong {
6005
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6006
+ return C.longlong(op.SocksPort)
6007
+ }
6008
+
6009
+ //export linksocks_ClientOption_SocksPort_Set
6010
+ func linksocks_ClientOption_SocksPort_Set(handle CGoHandle, val C.longlong) {
6011
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6012
+ op.SocksPort = int(val)
6013
+ }
6014
+
6015
+ //export linksocks_ClientOption_SocksUsername_Get
6016
+ func linksocks_ClientOption_SocksUsername_Get(handle CGoHandle) *C.char {
6017
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6018
+ return C.CString(op.SocksUsername)
6019
+ }
6020
+
6021
+ //export linksocks_ClientOption_SocksUsername_Set
6022
+ func linksocks_ClientOption_SocksUsername_Set(handle CGoHandle, val *C.char) {
6023
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6024
+ op.SocksUsername = C.GoString(val)
6025
+ }
6026
+
6027
+ //export linksocks_ClientOption_SocksPassword_Get
6028
+ func linksocks_ClientOption_SocksPassword_Get(handle CGoHandle) *C.char {
6029
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6030
+ return C.CString(op.SocksPassword)
6031
+ }
6032
+
6033
+ //export linksocks_ClientOption_SocksPassword_Set
6034
+ func linksocks_ClientOption_SocksPassword_Set(handle CGoHandle, val *C.char) {
6035
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6036
+ op.SocksPassword = C.GoString(val)
6037
+ }
6038
+
6039
+ //export linksocks_ClientOption_SocksWaitServer_Get
6040
+ func linksocks_ClientOption_SocksWaitServer_Get(handle CGoHandle) C.char {
6041
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6042
+ return boolGoToPy(op.SocksWaitServer)
6043
+ }
6044
+
6045
+ //export linksocks_ClientOption_SocksWaitServer_Set
6046
+ func linksocks_ClientOption_SocksWaitServer_Set(handle CGoHandle, val C.char) {
6047
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6048
+ op.SocksWaitServer = boolPyToGo(val)
5969
6049
  }
5970
6050
 
5971
- // --- wrapping struct: linksocks.PartnersMessage ---
5972
- //
5973
- //export linksocks_PartnersMessage_CTor
5974
- func linksocks_PartnersMessage_CTor() CGoHandle {
5975
- return CGoHandle(handleFromPtr_linksocks_PartnersMessage(&linksocks.PartnersMessage{}))
6051
+ //export linksocks_ClientOption_Reconnect_Get
6052
+ func linksocks_ClientOption_Reconnect_Get(handle CGoHandle) C.char {
6053
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6054
+ return boolGoToPy(op.Reconnect)
5976
6055
  }
5977
6056
 
5978
- //export linksocks_PartnersMessage_Count_Get
5979
- func linksocks_PartnersMessage_Count_Get(handle CGoHandle) C.longlong {
5980
- op := ptrFromHandle_linksocks_PartnersMessage(handle)
5981
- return C.longlong(op.Count)
6057
+ //export linksocks_ClientOption_Reconnect_Set
6058
+ func linksocks_ClientOption_Reconnect_Set(handle CGoHandle, val C.char) {
6059
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6060
+ op.Reconnect = boolPyToGo(val)
5982
6061
  }
5983
6062
 
5984
- //export linksocks_PartnersMessage_Count_Set
5985
- func linksocks_PartnersMessage_Count_Set(handle CGoHandle, val C.longlong) {
5986
- op := ptrFromHandle_linksocks_PartnersMessage(handle)
5987
- op.Count = int(val)
6063
+ //export linksocks_ClientOption_ReconnectDelay_Get
6064
+ func linksocks_ClientOption_ReconnectDelay_Get(handle CGoHandle) C.longlong {
6065
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6066
+ return C.longlong(int64(op.ReconnectDelay))
5988
6067
  }
5989
6068
 
5990
- //export linksocks_PartnersMessage_GetType
5991
- func linksocks_PartnersMessage_GetType(_handle CGoHandle) *C.char {
5992
- _saved_thread := C.PyEval_SaveThread()
5993
- defer C.PyEval_RestoreThread(_saved_thread)
5994
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.PartnersMessage")
5995
- if __err != nil {
5996
- return C.CString("")
5997
- }
5998
- return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.PartnersMessage{})).(*linksocks.PartnersMessage).GetType())
6069
+ //export linksocks_ClientOption_ReconnectDelay_Set
6070
+ func linksocks_ClientOption_ReconnectDelay_Set(handle CGoHandle, val C.longlong) {
6071
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6072
+ op.ReconnectDelay = time.Duration(int64(val))
6073
+ }
5999
6074
 
6075
+ //export linksocks_ClientOption_Logger_Get
6076
+ func linksocks_ClientOption_Logger_Get(handle CGoHandle) CGoHandle {
6077
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6078
+ return handleFromPtr_zerolog_Logger(&op.Logger)
6000
6079
  }
6001
6080
 
6002
- // --- wrapping struct: linksocks.RelayOption ---
6003
- //
6004
- //export linksocks_RelayOption_CTor
6005
- func linksocks_RelayOption_CTor() CGoHandle {
6006
- return CGoHandle(handleFromPtr_linksocks_RelayOption(&linksocks.RelayOption{}))
6081
+ //export linksocks_ClientOption_Logger_Set
6082
+ func linksocks_ClientOption_Logger_Set(handle CGoHandle, val CGoHandle) {
6083
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6084
+ op.Logger = *ptrFromHandle_zerolog_Logger(val)
6007
6085
  }
6008
6086
 
6009
- //export linksocks_RelayOption_BufferSize_Get
6010
- func linksocks_RelayOption_BufferSize_Get(handle CGoHandle) C.longlong {
6011
- op := ptrFromHandle_linksocks_RelayOption(handle)
6087
+ //export linksocks_ClientOption_BufferSize_Get
6088
+ func linksocks_ClientOption_BufferSize_Get(handle CGoHandle) C.longlong {
6089
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6012
6090
  return C.longlong(op.BufferSize)
6013
6091
  }
6014
6092
 
6015
- //export linksocks_RelayOption_BufferSize_Set
6016
- func linksocks_RelayOption_BufferSize_Set(handle CGoHandle, val C.longlong) {
6017
- op := ptrFromHandle_linksocks_RelayOption(handle)
6093
+ //export linksocks_ClientOption_BufferSize_Set
6094
+ func linksocks_ClientOption_BufferSize_Set(handle CGoHandle, val C.longlong) {
6095
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6018
6096
  op.BufferSize = int(val)
6019
6097
  }
6020
6098
 
6021
- //export linksocks_RelayOption_ChannelTimeout_Get
6022
- func linksocks_RelayOption_ChannelTimeout_Get(handle CGoHandle) C.longlong {
6023
- op := ptrFromHandle_linksocks_RelayOption(handle)
6099
+ //export linksocks_ClientOption_ChannelTimeout_Get
6100
+ func linksocks_ClientOption_ChannelTimeout_Get(handle CGoHandle) C.longlong {
6101
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6024
6102
  return C.longlong(int64(op.ChannelTimeout))
6025
6103
  }
6026
6104
 
6027
- //export linksocks_RelayOption_ChannelTimeout_Set
6028
- func linksocks_RelayOption_ChannelTimeout_Set(handle CGoHandle, val C.longlong) {
6029
- op := ptrFromHandle_linksocks_RelayOption(handle)
6105
+ //export linksocks_ClientOption_ChannelTimeout_Set
6106
+ func linksocks_ClientOption_ChannelTimeout_Set(handle CGoHandle, val C.longlong) {
6107
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6030
6108
  op.ChannelTimeout = time.Duration(int64(val))
6031
6109
  }
6032
6110
 
6033
- //export linksocks_RelayOption_ConnectTimeout_Get
6034
- func linksocks_RelayOption_ConnectTimeout_Get(handle CGoHandle) C.longlong {
6035
- op := ptrFromHandle_linksocks_RelayOption(handle)
6111
+ //export linksocks_ClientOption_ConnectTimeout_Get
6112
+ func linksocks_ClientOption_ConnectTimeout_Get(handle CGoHandle) C.longlong {
6113
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6036
6114
  return C.longlong(int64(op.ConnectTimeout))
6037
6115
  }
6038
6116
 
6039
- //export linksocks_RelayOption_ConnectTimeout_Set
6040
- func linksocks_RelayOption_ConnectTimeout_Set(handle CGoHandle, val C.longlong) {
6041
- op := ptrFromHandle_linksocks_RelayOption(handle)
6117
+ //export linksocks_ClientOption_ConnectTimeout_Set
6118
+ func linksocks_ClientOption_ConnectTimeout_Set(handle CGoHandle, val C.longlong) {
6119
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6042
6120
  op.ConnectTimeout = time.Duration(int64(val))
6043
6121
  }
6044
6122
 
6045
- //export linksocks_RelayOption_FastOpen_Get
6046
- func linksocks_RelayOption_FastOpen_Get(handle CGoHandle) C.char {
6047
- op := ptrFromHandle_linksocks_RelayOption(handle)
6123
+ //export linksocks_ClientOption_Threads_Get
6124
+ func linksocks_ClientOption_Threads_Get(handle CGoHandle) C.longlong {
6125
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6126
+ return C.longlong(op.Threads)
6127
+ }
6128
+
6129
+ //export linksocks_ClientOption_Threads_Set
6130
+ func linksocks_ClientOption_Threads_Set(handle CGoHandle, val C.longlong) {
6131
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6132
+ op.Threads = int(val)
6133
+ }
6134
+
6135
+ //export linksocks_ClientOption_FastOpen_Get
6136
+ func linksocks_ClientOption_FastOpen_Get(handle CGoHandle) C.char {
6137
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6048
6138
  return boolGoToPy(op.FastOpen)
6049
6139
  }
6050
6140
 
6051
- //export linksocks_RelayOption_FastOpen_Set
6052
- func linksocks_RelayOption_FastOpen_Set(handle CGoHandle, val C.char) {
6053
- op := ptrFromHandle_linksocks_RelayOption(handle)
6141
+ //export linksocks_ClientOption_FastOpen_Set
6142
+ func linksocks_ClientOption_FastOpen_Set(handle CGoHandle, val C.char) {
6143
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6054
6144
  op.FastOpen = boolPyToGo(val)
6055
6145
  }
6056
6146
 
6057
- //export linksocks_RelayOption_UpstreamProxy_Get
6058
- func linksocks_RelayOption_UpstreamProxy_Get(handle CGoHandle) *C.char {
6059
- op := ptrFromHandle_linksocks_RelayOption(handle)
6147
+ //export linksocks_ClientOption_UpstreamProxy_Get
6148
+ func linksocks_ClientOption_UpstreamProxy_Get(handle CGoHandle) *C.char {
6149
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6060
6150
  return C.CString(op.UpstreamProxy)
6061
6151
  }
6062
6152
 
6063
- //export linksocks_RelayOption_UpstreamProxy_Set
6064
- func linksocks_RelayOption_UpstreamProxy_Set(handle CGoHandle, val *C.char) {
6065
- op := ptrFromHandle_linksocks_RelayOption(handle)
6153
+ //export linksocks_ClientOption_UpstreamProxy_Set
6154
+ func linksocks_ClientOption_UpstreamProxy_Set(handle CGoHandle, val *C.char) {
6155
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6066
6156
  op.UpstreamProxy = C.GoString(val)
6067
6157
  }
6068
6158
 
6069
- //export linksocks_RelayOption_UpstreamUsername_Get
6070
- func linksocks_RelayOption_UpstreamUsername_Get(handle CGoHandle) *C.char {
6071
- op := ptrFromHandle_linksocks_RelayOption(handle)
6159
+ //export linksocks_ClientOption_UpstreamUsername_Get
6160
+ func linksocks_ClientOption_UpstreamUsername_Get(handle CGoHandle) *C.char {
6161
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6072
6162
  return C.CString(op.UpstreamUsername)
6073
6163
  }
6074
6164
 
6075
- //export linksocks_RelayOption_UpstreamUsername_Set
6076
- func linksocks_RelayOption_UpstreamUsername_Set(handle CGoHandle, val *C.char) {
6077
- op := ptrFromHandle_linksocks_RelayOption(handle)
6165
+ //export linksocks_ClientOption_UpstreamUsername_Set
6166
+ func linksocks_ClientOption_UpstreamUsername_Set(handle CGoHandle, val *C.char) {
6167
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6078
6168
  op.UpstreamUsername = C.GoString(val)
6079
6169
  }
6080
6170
 
6081
- //export linksocks_RelayOption_UpstreamPassword_Get
6082
- func linksocks_RelayOption_UpstreamPassword_Get(handle CGoHandle) *C.char {
6083
- op := ptrFromHandle_linksocks_RelayOption(handle)
6171
+ //export linksocks_ClientOption_UpstreamPassword_Get
6172
+ func linksocks_ClientOption_UpstreamPassword_Get(handle CGoHandle) *C.char {
6173
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6084
6174
  return C.CString(op.UpstreamPassword)
6085
6175
  }
6086
6176
 
6087
- //export linksocks_RelayOption_UpstreamPassword_Set
6088
- func linksocks_RelayOption_UpstreamPassword_Set(handle CGoHandle, val *C.char) {
6089
- op := ptrFromHandle_linksocks_RelayOption(handle)
6177
+ //export linksocks_ClientOption_UpstreamPassword_Set
6178
+ func linksocks_ClientOption_UpstreamPassword_Set(handle CGoHandle, val *C.char) {
6179
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6090
6180
  op.UpstreamPassword = C.GoString(val)
6091
6181
  }
6092
6182
 
6093
- //export linksocks_RelayOption_EnableDynamicBatching_Get
6094
- func linksocks_RelayOption_EnableDynamicBatching_Get(handle CGoHandle) C.char {
6095
- op := ptrFromHandle_linksocks_RelayOption(handle)
6096
- return boolGoToPy(op.EnableDynamicBatching)
6097
- }
6098
-
6099
- //export linksocks_RelayOption_EnableDynamicBatching_Set
6100
- func linksocks_RelayOption_EnableDynamicBatching_Set(handle CGoHandle, val C.char) {
6101
- op := ptrFromHandle_linksocks_RelayOption(handle)
6102
- op.EnableDynamicBatching = boolPyToGo(val)
6103
- }
6104
-
6105
- //export linksocks_RelayOption_MaxBatchWaitTime_Get
6106
- func linksocks_RelayOption_MaxBatchWaitTime_Get(handle CGoHandle) C.longlong {
6107
- op := ptrFromHandle_linksocks_RelayOption(handle)
6108
- return C.longlong(int64(op.MaxBatchWaitTime))
6183
+ //export linksocks_ClientOption_NoEnvProxy_Get
6184
+ func linksocks_ClientOption_NoEnvProxy_Get(handle CGoHandle) C.char {
6185
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6186
+ return boolGoToPy(op.NoEnvProxy)
6109
6187
  }
6110
6188
 
6111
- //export linksocks_RelayOption_MaxBatchWaitTime_Set
6112
- func linksocks_RelayOption_MaxBatchWaitTime_Set(handle CGoHandle, val C.longlong) {
6113
- op := ptrFromHandle_linksocks_RelayOption(handle)
6114
- op.MaxBatchWaitTime = time.Duration(int64(val))
6189
+ //export linksocks_ClientOption_NoEnvProxy_Set
6190
+ func linksocks_ClientOption_NoEnvProxy_Set(handle CGoHandle, val C.char) {
6191
+ op := ptrFromHandle_linksocks_ClientOption(handle)
6192
+ op.NoEnvProxy = boolPyToGo(val)
6115
6193
  }
6116
6194
 
6117
- //export linksocks_RelayOption_MinBatchWaitTime_Get
6118
- func linksocks_RelayOption_MinBatchWaitTime_Get(handle CGoHandle) C.longlong {
6119
- op := ptrFromHandle_linksocks_RelayOption(handle)
6120
- return C.longlong(int64(op.MinBatchWaitTime))
6121
- }
6195
+ //export linksocks_ClientOption_WithWSURL
6196
+ func linksocks_ClientOption_WithWSURL(_handle CGoHandle, url *C.char) CGoHandle {
6197
+ _saved_thread := C.PyEval_SaveThread()
6198
+ defer C.PyEval_RestoreThread(_saved_thread)
6199
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6200
+ if __err != nil {
6201
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6202
+ }
6203
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithWSURL(C.GoString(url)))
6122
6204
 
6123
- //export linksocks_RelayOption_MinBatchWaitTime_Set
6124
- func linksocks_RelayOption_MinBatchWaitTime_Set(handle CGoHandle, val C.longlong) {
6125
- op := ptrFromHandle_linksocks_RelayOption(handle)
6126
- op.MinBatchWaitTime = time.Duration(int64(val))
6127
6205
  }
6128
6206
 
6129
- //export linksocks_RelayOption_HighSpeedThreshold_Get
6130
- func linksocks_RelayOption_HighSpeedThreshold_Get(handle CGoHandle) C.double {
6131
- op := ptrFromHandle_linksocks_RelayOption(handle)
6132
- return C.double(op.HighSpeedThreshold)
6133
- }
6207
+ //export linksocks_ClientOption_WithReverse
6208
+ func linksocks_ClientOption_WithReverse(_handle CGoHandle, reverse C.char) CGoHandle {
6209
+ _saved_thread := C.PyEval_SaveThread()
6210
+ defer C.PyEval_RestoreThread(_saved_thread)
6211
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6212
+ if __err != nil {
6213
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6214
+ }
6215
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithReverse(boolPyToGo(reverse)))
6134
6216
 
6135
- //export linksocks_RelayOption_HighSpeedThreshold_Set
6136
- func linksocks_RelayOption_HighSpeedThreshold_Set(handle CGoHandle, val C.double) {
6137
- op := ptrFromHandle_linksocks_RelayOption(handle)
6138
- op.HighSpeedThreshold = float64(val)
6139
6217
  }
6140
6218
 
6141
- //export linksocks_RelayOption_LowSpeedThreshold_Get
6142
- func linksocks_RelayOption_LowSpeedThreshold_Get(handle CGoHandle) C.double {
6143
- op := ptrFromHandle_linksocks_RelayOption(handle)
6144
- return C.double(op.LowSpeedThreshold)
6145
- }
6219
+ //export linksocks_ClientOption_WithSocksHost
6220
+ func linksocks_ClientOption_WithSocksHost(_handle CGoHandle, host *C.char) CGoHandle {
6221
+ _saved_thread := C.PyEval_SaveThread()
6222
+ defer C.PyEval_RestoreThread(_saved_thread)
6223
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6224
+ if __err != nil {
6225
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6226
+ }
6227
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithSocksHost(C.GoString(host)))
6146
6228
 
6147
- //export linksocks_RelayOption_LowSpeedThreshold_Set
6148
- func linksocks_RelayOption_LowSpeedThreshold_Set(handle CGoHandle, val C.double) {
6149
- op := ptrFromHandle_linksocks_RelayOption(handle)
6150
- op.LowSpeedThreshold = float64(val)
6151
6229
  }
6152
6230
 
6153
- //export linksocks_RelayOption_CompressionThreshold_Get
6154
- func linksocks_RelayOption_CompressionThreshold_Get(handle CGoHandle) C.longlong {
6155
- op := ptrFromHandle_linksocks_RelayOption(handle)
6156
- return C.longlong(op.CompressionThreshold)
6157
- }
6231
+ //export linksocks_ClientOption_WithSocksPort
6232
+ func linksocks_ClientOption_WithSocksPort(_handle CGoHandle, port C.longlong) CGoHandle {
6233
+ _saved_thread := C.PyEval_SaveThread()
6234
+ defer C.PyEval_RestoreThread(_saved_thread)
6235
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6236
+ if __err != nil {
6237
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6238
+ }
6239
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithSocksPort(int(port)))
6158
6240
 
6159
- //export linksocks_RelayOption_CompressionThreshold_Set
6160
- func linksocks_RelayOption_CompressionThreshold_Set(handle CGoHandle, val C.longlong) {
6161
- op := ptrFromHandle_linksocks_RelayOption(handle)
6162
- op.CompressionThreshold = int(val)
6163
6241
  }
6164
6242
 
6165
- //export linksocks_RelayOption_WithBufferSize
6166
- func linksocks_RelayOption_WithBufferSize(_handle CGoHandle, size C.longlong) CGoHandle {
6243
+ //export linksocks_ClientOption_WithSocksUsername
6244
+ func linksocks_ClientOption_WithSocksUsername(_handle CGoHandle, username *C.char) CGoHandle {
6167
6245
  _saved_thread := C.PyEval_SaveThread()
6168
6246
  defer C.PyEval_RestoreThread(_saved_thread)
6169
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6247
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6170
6248
  if __err != nil {
6171
- return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6249
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6172
6250
  }
6173
- return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithBufferSize(int(size)))
6251
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithSocksUsername(C.GoString(username)))
6174
6252
 
6175
6253
  }
6176
6254
 
6177
- //export linksocks_RelayOption_WithChannelTimeout
6178
- func linksocks_RelayOption_WithChannelTimeout(_handle CGoHandle, timeout C.longlong) CGoHandle {
6255
+ //export linksocks_ClientOption_WithSocksPassword
6256
+ func linksocks_ClientOption_WithSocksPassword(_handle CGoHandle, password *C.char) CGoHandle {
6179
6257
  _saved_thread := C.PyEval_SaveThread()
6180
6258
  defer C.PyEval_RestoreThread(_saved_thread)
6181
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6259
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6182
6260
  if __err != nil {
6183
- return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6261
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6184
6262
  }
6185
- return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithChannelTimeout(time.Duration(int64(timeout))))
6263
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithSocksPassword(C.GoString(password)))
6186
6264
 
6187
6265
  }
6188
6266
 
6189
- //export linksocks_RelayOption_WithConnectTimeout
6190
- func linksocks_RelayOption_WithConnectTimeout(_handle CGoHandle, timeout C.longlong) CGoHandle {
6267
+ //export linksocks_ClientOption_WithSocksWaitServer
6268
+ func linksocks_ClientOption_WithSocksWaitServer(_handle CGoHandle, wait C.char) CGoHandle {
6191
6269
  _saved_thread := C.PyEval_SaveThread()
6192
6270
  defer C.PyEval_RestoreThread(_saved_thread)
6193
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6271
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6194
6272
  if __err != nil {
6195
- return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6273
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6196
6274
  }
6197
- return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithConnectTimeout(time.Duration(int64(timeout))))
6275
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithSocksWaitServer(boolPyToGo(wait)))
6198
6276
 
6199
6277
  }
6200
6278
 
6201
- //export linksocks_RelayOption_WithFastOpen
6202
- func linksocks_RelayOption_WithFastOpen(_handle CGoHandle, fastOpen C.char) CGoHandle {
6279
+ //export linksocks_ClientOption_WithReconnect
6280
+ func linksocks_ClientOption_WithReconnect(_handle CGoHandle, reconnect C.char) CGoHandle {
6203
6281
  _saved_thread := C.PyEval_SaveThread()
6204
6282
  defer C.PyEval_RestoreThread(_saved_thread)
6205
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6283
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6206
6284
  if __err != nil {
6207
- return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6285
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6208
6286
  }
6209
- return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithFastOpen(boolPyToGo(fastOpen)))
6287
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithReconnect(boolPyToGo(reconnect)))
6210
6288
 
6211
6289
  }
6212
6290
 
6213
- //export linksocks_RelayOption_WithUpstreamProxy
6214
- func linksocks_RelayOption_WithUpstreamProxy(_handle CGoHandle, proxy *C.char) CGoHandle {
6291
+ //export linksocks_ClientOption_WithReconnectDelay
6292
+ func linksocks_ClientOption_WithReconnectDelay(_handle CGoHandle, delay C.longlong) CGoHandle {
6215
6293
  _saved_thread := C.PyEval_SaveThread()
6216
6294
  defer C.PyEval_RestoreThread(_saved_thread)
6217
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6295
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6218
6296
  if __err != nil {
6219
- return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6297
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6220
6298
  }
6221
- return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithUpstreamProxy(C.GoString(proxy)))
6299
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithReconnectDelay(time.Duration(int64(delay))))
6222
6300
 
6223
6301
  }
6224
6302
 
6225
- //export linksocks_RelayOption_WithUpstreamAuth
6226
- func linksocks_RelayOption_WithUpstreamAuth(_handle CGoHandle, username *C.char, password *C.char) CGoHandle {
6303
+ //export linksocks_ClientOption_WithLogger
6304
+ func linksocks_ClientOption_WithLogger(_handle CGoHandle, logger CGoHandle) CGoHandle {
6227
6305
  _saved_thread := C.PyEval_SaveThread()
6228
6306
  defer C.PyEval_RestoreThread(_saved_thread)
6229
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6307
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6230
6308
  if __err != nil {
6231
- return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6309
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6232
6310
  }
6233
- return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithUpstreamAuth(C.GoString(username), C.GoString(password)))
6311
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithLogger(*ptrFromHandle_zerolog_Logger(logger)))
6234
6312
 
6235
6313
  }
6236
6314
 
6237
- //export linksocks_RelayOption_WithDynamicBatching
6238
- func linksocks_RelayOption_WithDynamicBatching(_handle CGoHandle, enabled C.char) CGoHandle {
6315
+ //export linksocks_ClientOption_WithBufferSize
6316
+ func linksocks_ClientOption_WithBufferSize(_handle CGoHandle, size C.longlong) CGoHandle {
6239
6317
  _saved_thread := C.PyEval_SaveThread()
6240
6318
  defer C.PyEval_RestoreThread(_saved_thread)
6241
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6319
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6242
6320
  if __err != nil {
6243
- return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6321
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6244
6322
  }
6245
- return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithDynamicBatching(boolPyToGo(enabled)))
6323
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithBufferSize(int(size)))
6246
6324
 
6247
6325
  }
6248
6326
 
6249
- //export linksocks_RelayOption_WithBatchingTimeLimits
6250
- func linksocks_RelayOption_WithBatchingTimeLimits(_handle CGoHandle, min C.longlong, max C.longlong) CGoHandle {
6327
+ //export linksocks_ClientOption_WithChannelTimeout
6328
+ func linksocks_ClientOption_WithChannelTimeout(_handle CGoHandle, timeout C.longlong) CGoHandle {
6251
6329
  _saved_thread := C.PyEval_SaveThread()
6252
6330
  defer C.PyEval_RestoreThread(_saved_thread)
6253
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6331
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6254
6332
  if __err != nil {
6255
- return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6333
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6256
6334
  }
6257
- return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithBatchingTimeLimits(time.Duration(int64(min)), time.Duration(int64(max))))
6335
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithChannelTimeout(time.Duration(int64(timeout))))
6258
6336
 
6259
6337
  }
6260
6338
 
6261
- //export linksocks_RelayOption_WithHighSpeedThreshold
6262
- func linksocks_RelayOption_WithHighSpeedThreshold(_handle CGoHandle, threshold C.double) CGoHandle {
6339
+ //export linksocks_ClientOption_WithConnectTimeout
6340
+ func linksocks_ClientOption_WithConnectTimeout(_handle CGoHandle, timeout C.longlong) CGoHandle {
6263
6341
  _saved_thread := C.PyEval_SaveThread()
6264
6342
  defer C.PyEval_RestoreThread(_saved_thread)
6265
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6343
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6266
6344
  if __err != nil {
6267
- return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6345
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6268
6346
  }
6269
- return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithHighSpeedThreshold(float64(threshold)))
6347
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithConnectTimeout(time.Duration(int64(timeout))))
6270
6348
 
6271
6349
  }
6272
6350
 
6273
- //export linksocks_RelayOption_WithLowSpeedThreshold
6274
- func linksocks_RelayOption_WithLowSpeedThreshold(_handle CGoHandle, threshold C.double) CGoHandle {
6351
+ //export linksocks_ClientOption_WithThreads
6352
+ func linksocks_ClientOption_WithThreads(_handle CGoHandle, threads C.longlong) CGoHandle {
6275
6353
  _saved_thread := C.PyEval_SaveThread()
6276
6354
  defer C.PyEval_RestoreThread(_saved_thread)
6277
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6355
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6278
6356
  if __err != nil {
6279
- return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6357
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6280
6358
  }
6281
- return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithLowSpeedThreshold(float64(threshold)))
6359
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithThreads(int(threads)))
6282
6360
 
6283
6361
  }
6284
6362
 
6285
- //export linksocks_RelayOption_WithCompressionThreshold
6286
- func linksocks_RelayOption_WithCompressionThreshold(_handle CGoHandle, threshold C.longlong) CGoHandle {
6363
+ //export linksocks_ClientOption_WithFastOpen
6364
+ func linksocks_ClientOption_WithFastOpen(_handle CGoHandle, fastOpen C.char) CGoHandle {
6287
6365
  _saved_thread := C.PyEval_SaveThread()
6288
6366
  defer C.PyEval_RestoreThread(_saved_thread)
6289
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6367
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6290
6368
  if __err != nil {
6291
- return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6369
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6292
6370
  }
6293
- return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithCompressionThreshold(int(threshold)))
6294
-
6295
- }
6371
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithFastOpen(boolPyToGo(fastOpen)))
6296
6372
 
6297
- // --- wrapping struct: linksocks.SocketManager ---
6298
- //
6299
- //export linksocks_SocketManager_CTor
6300
- func linksocks_SocketManager_CTor() CGoHandle {
6301
- return CGoHandle(handleFromPtr_linksocks_SocketManager(&linksocks.SocketManager{}))
6302
6373
  }
6303
6374
 
6304
- //export linksocks_SocketManager_GetListener
6305
- func linksocks_SocketManager_GetListener(_handle CGoHandle, port C.longlong) CGoHandle {
6375
+ //export linksocks_ClientOption_WithUpstreamProxy
6376
+ func linksocks_ClientOption_WithUpstreamProxy(_handle CGoHandle, proxy *C.char) CGoHandle {
6306
6377
  _saved_thread := C.PyEval_SaveThread()
6307
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.SocketManager")
6378
+ defer C.PyEval_RestoreThread(_saved_thread)
6379
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6308
6380
  if __err != nil {
6309
- return handleFromPtr_net_Listener(nil)
6381
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6310
6382
  }
6311
- cret, __err := gopyh.Embed(vifc, reflect.TypeOf(linksocks.SocketManager{})).(*linksocks.SocketManager).GetListener(int(port))
6383
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithUpstreamProxy(C.GoString(proxy)))
6312
6384
 
6313
- C.PyEval_RestoreThread(_saved_thread)
6314
- if __err != nil {
6315
- estr := C.CString(__err.Error())
6316
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
6317
- C.free(unsafe.Pointer(estr))
6318
- return handleFromPtr_net_Listener(nil)
6319
- }
6320
- return handleFromPtr_net_Listener(cret)
6321
6385
  }
6322
6386
 
6323
- //export linksocks_SocketManager_ReleaseListener
6324
- func linksocks_SocketManager_ReleaseListener(_handle CGoHandle, port C.longlong, goRun C.char) {
6387
+ //export linksocks_ClientOption_WithUpstreamAuth
6388
+ func linksocks_ClientOption_WithUpstreamAuth(_handle CGoHandle, username *C.char, password *C.char) CGoHandle {
6325
6389
  _saved_thread := C.PyEval_SaveThread()
6326
6390
  defer C.PyEval_RestoreThread(_saved_thread)
6327
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.SocketManager")
6391
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6328
6392
  if __err != nil {
6329
- return
6330
- }
6331
- if boolPyToGo(goRun) {
6332
- go gopyh.Embed(vifc, reflect.TypeOf(linksocks.SocketManager{})).(*linksocks.SocketManager).ReleaseListener(int(port))
6333
- } else {
6334
- gopyh.Embed(vifc, reflect.TypeOf(linksocks.SocketManager{})).(*linksocks.SocketManager).ReleaseListener(int(port))
6393
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6335
6394
  }
6395
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithUpstreamAuth(C.GoString(username), C.GoString(password)))
6396
+
6336
6397
  }
6337
6398
 
6338
- //export linksocks_SocketManager_Close
6339
- func linksocks_SocketManager_Close(_handle CGoHandle, goRun C.char) {
6399
+ //export linksocks_ClientOption_WithNoEnvProxy
6400
+ func linksocks_ClientOption_WithNoEnvProxy(_handle CGoHandle, noEnvProxy C.char) CGoHandle {
6340
6401
  _saved_thread := C.PyEval_SaveThread()
6341
6402
  defer C.PyEval_RestoreThread(_saved_thread)
6342
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.SocketManager")
6403
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ClientOption")
6343
6404
  if __err != nil {
6344
- return
6345
- }
6346
- if boolPyToGo(goRun) {
6347
- go gopyh.Embed(vifc, reflect.TypeOf(linksocks.SocketManager{})).(*linksocks.SocketManager).Close()
6348
- } else {
6349
- gopyh.Embed(vifc, reflect.TypeOf(linksocks.SocketManager{})).(*linksocks.SocketManager).Close()
6405
+ return handleFromPtr_Ptr_linksocks_ClientOption(nil)
6350
6406
  }
6407
+ return handleFromPtr_Ptr_linksocks_ClientOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ClientOption{})).(*linksocks.ClientOption).WithNoEnvProxy(boolPyToGo(noEnvProxy)))
6408
+
6351
6409
  }
6352
6410
 
6353
- // --- wrapping struct: linksocks.LinkSocksClient ---
6411
+ // --- wrapping struct: linksocks.ConnectMessage ---
6354
6412
  //
6355
- //export linksocks_LinkSocksClient_CTor
6356
- func linksocks_LinkSocksClient_CTor() CGoHandle {
6357
- return CGoHandle(handleFromPtr_linksocks_LinkSocksClient(&linksocks.LinkSocksClient{}))
6413
+ //export linksocks_ConnectMessage_CTor
6414
+ func linksocks_ConnectMessage_CTor() CGoHandle {
6415
+ return CGoHandle(handleFromPtr_linksocks_ConnectMessage(&linksocks.ConnectMessage{}))
6358
6416
  }
6359
6417
 
6360
- //export linksocks_LinkSocksClient_IsConnected_Get
6361
- func linksocks_LinkSocksClient_IsConnected_Get(handle CGoHandle) C.char {
6362
- op := ptrFromHandle_linksocks_LinkSocksClient(handle)
6363
- return boolGoToPy(op.IsConnected)
6418
+ //export linksocks_ConnectMessage_Protocol_Get
6419
+ func linksocks_ConnectMessage_Protocol_Get(handle CGoHandle) *C.char {
6420
+ op := ptrFromHandle_linksocks_ConnectMessage(handle)
6421
+ return C.CString(op.Protocol)
6364
6422
  }
6365
6423
 
6366
- //export linksocks_LinkSocksClient_IsConnected_Set
6367
- func linksocks_LinkSocksClient_IsConnected_Set(handle CGoHandle, val C.char) {
6368
- op := ptrFromHandle_linksocks_LinkSocksClient(handle)
6369
- op.IsConnected = boolPyToGo(val)
6424
+ //export linksocks_ConnectMessage_Protocol_Set
6425
+ func linksocks_ConnectMessage_Protocol_Set(handle CGoHandle, val *C.char) {
6426
+ op := ptrFromHandle_linksocks_ConnectMessage(handle)
6427
+ op.Protocol = C.GoString(val)
6370
6428
  }
6371
6429
 
6372
- //export linksocks_LinkSocksClient_WaitReady
6373
- func linksocks_LinkSocksClient_WaitReady(_handle CGoHandle, ctx CGoHandle, timeout C.longlong) *C.char {
6374
- _saved_thread := C.PyEval_SaveThread()
6375
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksClient")
6376
- if __err != nil {
6377
- return errorGoToPy(nil)
6378
- }
6379
- __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksClient{})).(*linksocks.LinkSocksClient).WaitReady(ptrFromHandle_context_Context(ctx), time.Duration(int64(timeout)))
6430
+ //export linksocks_ConnectMessage_Address_Get
6431
+ func linksocks_ConnectMessage_Address_Get(handle CGoHandle) *C.char {
6432
+ op := ptrFromHandle_linksocks_ConnectMessage(handle)
6433
+ return C.CString(op.Address)
6434
+ }
6380
6435
 
6381
- C.PyEval_RestoreThread(_saved_thread)
6382
- if __err != nil {
6383
- estr := C.CString(__err.Error())
6384
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
6385
- return estr
6386
- }
6387
- return C.CString("")
6436
+ //export linksocks_ConnectMessage_Address_Set
6437
+ func linksocks_ConnectMessage_Address_Set(handle CGoHandle, val *C.char) {
6438
+ op := ptrFromHandle_linksocks_ConnectMessage(handle)
6439
+ op.Address = C.GoString(val)
6388
6440
  }
6389
6441
 
6390
- //export linksocks_LinkSocksClient_Connect
6391
- func linksocks_LinkSocksClient_Connect(_handle CGoHandle, ctx CGoHandle) *C.char {
6442
+ //export linksocks_ConnectMessage_Port_Get
6443
+ func linksocks_ConnectMessage_Port_Get(handle CGoHandle) C.longlong {
6444
+ op := ptrFromHandle_linksocks_ConnectMessage(handle)
6445
+ return C.longlong(op.Port)
6446
+ }
6447
+
6448
+ //export linksocks_ConnectMessage_Port_Set
6449
+ func linksocks_ConnectMessage_Port_Set(handle CGoHandle, val C.longlong) {
6450
+ op := ptrFromHandle_linksocks_ConnectMessage(handle)
6451
+ op.Port = int(val)
6452
+ }
6453
+
6454
+ //export linksocks_ConnectMessage_ChannelID_Get
6455
+ func linksocks_ConnectMessage_ChannelID_Get(handle CGoHandle) CGoHandle {
6456
+ op := ptrFromHandle_linksocks_ConnectMessage(handle)
6457
+ return handleFromPtr_uuid_UUID(&op.ChannelID)
6458
+ }
6459
+
6460
+ //export linksocks_ConnectMessage_GetType
6461
+ func linksocks_ConnectMessage_GetType(_handle CGoHandle) *C.char {
6392
6462
  _saved_thread := C.PyEval_SaveThread()
6393
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksClient")
6463
+ defer C.PyEval_RestoreThread(_saved_thread)
6464
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ConnectMessage")
6394
6465
  if __err != nil {
6395
- return errorGoToPy(nil)
6466
+ return C.CString("")
6396
6467
  }
6397
- __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksClient{})).(*linksocks.LinkSocksClient).Connect(ptrFromHandle_context_Context(ctx))
6468
+ return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ConnectMessage{})).(*linksocks.ConnectMessage).GetType())
6398
6469
 
6399
- C.PyEval_RestoreThread(_saved_thread)
6400
- if __err != nil {
6401
- estr := C.CString(__err.Error())
6402
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
6403
- return estr
6404
- }
6405
- return C.CString("")
6406
6470
  }
6407
6471
 
6408
- //export linksocks_LinkSocksClient_Close
6409
- func linksocks_LinkSocksClient_Close(_handle CGoHandle, goRun C.char) {
6410
- _saved_thread := C.PyEval_SaveThread()
6411
- defer C.PyEval_RestoreThread(_saved_thread)
6412
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksClient")
6413
- if __err != nil {
6414
- return
6415
- }
6416
- if boolPyToGo(goRun) {
6417
- go gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksClient{})).(*linksocks.LinkSocksClient).Close()
6418
- } else {
6419
- gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksClient{})).(*linksocks.LinkSocksClient).Close()
6420
- }
6472
+ // --- wrapping struct: linksocks.RelayOption ---
6473
+ //
6474
+ //export linksocks_RelayOption_CTor
6475
+ func linksocks_RelayOption_CTor() CGoHandle {
6476
+ return CGoHandle(handleFromPtr_linksocks_RelayOption(&linksocks.RelayOption{}))
6477
+ }
6478
+
6479
+ //export linksocks_RelayOption_BufferSize_Get
6480
+ func linksocks_RelayOption_BufferSize_Get(handle CGoHandle) C.longlong {
6481
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6482
+ return C.longlong(op.BufferSize)
6483
+ }
6484
+
6485
+ //export linksocks_RelayOption_BufferSize_Set
6486
+ func linksocks_RelayOption_BufferSize_Set(handle CGoHandle, val C.longlong) {
6487
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6488
+ op.BufferSize = int(val)
6489
+ }
6490
+
6491
+ //export linksocks_RelayOption_ChannelTimeout_Get
6492
+ func linksocks_RelayOption_ChannelTimeout_Get(handle CGoHandle) C.longlong {
6493
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6494
+ return C.longlong(int64(op.ChannelTimeout))
6421
6495
  }
6422
6496
 
6423
- //export linksocks_LinkSocksClient_AddConnector
6424
- func linksocks_LinkSocksClient_AddConnector(_handle CGoHandle, connectorToken *C.char) *C.char {
6425
- _saved_thread := C.PyEval_SaveThread()
6426
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksClient")
6427
- if __err != nil {
6428
- return C.CString("")
6429
- }
6430
- cret, __err := gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksClient{})).(*linksocks.LinkSocksClient).AddConnector(C.GoString(connectorToken))
6497
+ //export linksocks_RelayOption_ChannelTimeout_Set
6498
+ func linksocks_RelayOption_ChannelTimeout_Set(handle CGoHandle, val C.longlong) {
6499
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6500
+ op.ChannelTimeout = time.Duration(int64(val))
6501
+ }
6431
6502
 
6432
- C.PyEval_RestoreThread(_saved_thread)
6433
- if __err != nil {
6434
- estr := C.CString(__err.Error())
6435
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
6436
- C.free(unsafe.Pointer(estr))
6437
- return C.CString("")
6438
- }
6439
- return C.CString(cret)
6503
+ //export linksocks_RelayOption_ConnectTimeout_Get
6504
+ func linksocks_RelayOption_ConnectTimeout_Get(handle CGoHandle) C.longlong {
6505
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6506
+ return C.longlong(int64(op.ConnectTimeout))
6440
6507
  }
6441
6508
 
6442
- //export linksocks_LinkSocksClient_RemoveConnector
6443
- func linksocks_LinkSocksClient_RemoveConnector(_handle CGoHandle, connectorToken *C.char) *C.char {
6444
- _saved_thread := C.PyEval_SaveThread()
6445
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksClient")
6446
- if __err != nil {
6447
- return errorGoToPy(nil)
6448
- }
6449
- __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksClient{})).(*linksocks.LinkSocksClient).RemoveConnector(C.GoString(connectorToken))
6509
+ //export linksocks_RelayOption_ConnectTimeout_Set
6510
+ func linksocks_RelayOption_ConnectTimeout_Set(handle CGoHandle, val C.longlong) {
6511
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6512
+ op.ConnectTimeout = time.Duration(int64(val))
6513
+ }
6450
6514
 
6451
- C.PyEval_RestoreThread(_saved_thread)
6452
- if __err != nil {
6453
- estr := C.CString(__err.Error())
6454
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
6455
- return estr
6456
- }
6457
- return C.CString("")
6515
+ //export linksocks_RelayOption_FastOpen_Get
6516
+ func linksocks_RelayOption_FastOpen_Get(handle CGoHandle) C.char {
6517
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6518
+ return boolGoToPy(op.FastOpen)
6458
6519
  }
6459
6520
 
6460
- //export linksocks_LinkSocksClient_GetPartnersCount
6461
- func linksocks_LinkSocksClient_GetPartnersCount(_handle CGoHandle) C.longlong {
6462
- _saved_thread := C.PyEval_SaveThread()
6463
- defer C.PyEval_RestoreThread(_saved_thread)
6464
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksClient")
6465
- if __err != nil {
6466
- return C.longlong(0)
6467
- }
6468
- return C.longlong(gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksClient{})).(*linksocks.LinkSocksClient).GetPartnersCount())
6521
+ //export linksocks_RelayOption_FastOpen_Set
6522
+ func linksocks_RelayOption_FastOpen_Set(handle CGoHandle, val C.char) {
6523
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6524
+ op.FastOpen = boolPyToGo(val)
6525
+ }
6469
6526
 
6527
+ //export linksocks_RelayOption_UpstreamProxy_Get
6528
+ func linksocks_RelayOption_UpstreamProxy_Get(handle CGoHandle) *C.char {
6529
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6530
+ return C.CString(op.UpstreamProxy)
6470
6531
  }
6471
6532
 
6472
- // --- wrapping struct: linksocks.LogEntry ---
6473
- //
6474
- //export linksocks_LogEntry_CTor
6475
- func linksocks_LogEntry_CTor() CGoHandle {
6476
- return CGoHandle(handleFromPtr_linksocks_LogEntry(&linksocks.LogEntry{}))
6533
+ //export linksocks_RelayOption_UpstreamProxy_Set
6534
+ func linksocks_RelayOption_UpstreamProxy_Set(handle CGoHandle, val *C.char) {
6535
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6536
+ op.UpstreamProxy = C.GoString(val)
6477
6537
  }
6478
6538
 
6479
- //export linksocks_LogEntry_LoggerID_Get
6480
- func linksocks_LogEntry_LoggerID_Get(handle CGoHandle) *C.char {
6481
- op := ptrFromHandle_linksocks_LogEntry(handle)
6482
- return C.CString(op.LoggerID)
6539
+ //export linksocks_RelayOption_UpstreamUsername_Get
6540
+ func linksocks_RelayOption_UpstreamUsername_Get(handle CGoHandle) *C.char {
6541
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6542
+ return C.CString(op.UpstreamUsername)
6483
6543
  }
6484
6544
 
6485
- //export linksocks_LogEntry_LoggerID_Set
6486
- func linksocks_LogEntry_LoggerID_Set(handle CGoHandle, val *C.char) {
6487
- op := ptrFromHandle_linksocks_LogEntry(handle)
6488
- op.LoggerID = C.GoString(val)
6545
+ //export linksocks_RelayOption_UpstreamUsername_Set
6546
+ func linksocks_RelayOption_UpstreamUsername_Set(handle CGoHandle, val *C.char) {
6547
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6548
+ op.UpstreamUsername = C.GoString(val)
6489
6549
  }
6490
6550
 
6491
- //export linksocks_LogEntry_Message_Get
6492
- func linksocks_LogEntry_Message_Get(handle CGoHandle) *C.char {
6493
- op := ptrFromHandle_linksocks_LogEntry(handle)
6494
- return C.CString(op.Message)
6551
+ //export linksocks_RelayOption_UpstreamPassword_Get
6552
+ func linksocks_RelayOption_UpstreamPassword_Get(handle CGoHandle) *C.char {
6553
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6554
+ return C.CString(op.UpstreamPassword)
6495
6555
  }
6496
6556
 
6497
- //export linksocks_LogEntry_Message_Set
6498
- func linksocks_LogEntry_Message_Set(handle CGoHandle, val *C.char) {
6499
- op := ptrFromHandle_linksocks_LogEntry(handle)
6500
- op.Message = C.GoString(val)
6557
+ //export linksocks_RelayOption_UpstreamPassword_Set
6558
+ func linksocks_RelayOption_UpstreamPassword_Set(handle CGoHandle, val *C.char) {
6559
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6560
+ op.UpstreamPassword = C.GoString(val)
6501
6561
  }
6502
6562
 
6503
- //export linksocks_LogEntry_Time_Get
6504
- func linksocks_LogEntry_Time_Get(handle CGoHandle) C.longlong {
6505
- op := ptrFromHandle_linksocks_LogEntry(handle)
6506
- return C.longlong(op.Time)
6563
+ //export linksocks_RelayOption_EnableDynamicBatching_Get
6564
+ func linksocks_RelayOption_EnableDynamicBatching_Get(handle CGoHandle) C.char {
6565
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6566
+ return boolGoToPy(op.EnableDynamicBatching)
6507
6567
  }
6508
6568
 
6509
- //export linksocks_LogEntry_Time_Set
6510
- func linksocks_LogEntry_Time_Set(handle CGoHandle, val C.longlong) {
6511
- op := ptrFromHandle_linksocks_LogEntry(handle)
6512
- op.Time = int64(val)
6569
+ //export linksocks_RelayOption_EnableDynamicBatching_Set
6570
+ func linksocks_RelayOption_EnableDynamicBatching_Set(handle CGoHandle, val C.char) {
6571
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6572
+ op.EnableDynamicBatching = boolPyToGo(val)
6513
6573
  }
6514
6574
 
6515
- // --- wrapping struct: linksocks.LogMessage ---
6516
- //
6517
- //export linksocks_LogMessage_CTor
6518
- func linksocks_LogMessage_CTor() CGoHandle {
6519
- return CGoHandle(handleFromPtr_linksocks_LogMessage(&linksocks.LogMessage{}))
6575
+ //export linksocks_RelayOption_MaxBatchWaitTime_Get
6576
+ func linksocks_RelayOption_MaxBatchWaitTime_Get(handle CGoHandle) C.longlong {
6577
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6578
+ return C.longlong(int64(op.MaxBatchWaitTime))
6520
6579
  }
6521
6580
 
6522
- //export linksocks_LogMessage_Level_Get
6523
- func linksocks_LogMessage_Level_Get(handle CGoHandle) *C.char {
6524
- op := ptrFromHandle_linksocks_LogMessage(handle)
6525
- return C.CString(op.Level)
6581
+ //export linksocks_RelayOption_MaxBatchWaitTime_Set
6582
+ func linksocks_RelayOption_MaxBatchWaitTime_Set(handle CGoHandle, val C.longlong) {
6583
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6584
+ op.MaxBatchWaitTime = time.Duration(int64(val))
6526
6585
  }
6527
6586
 
6528
- //export linksocks_LogMessage_Level_Set
6529
- func linksocks_LogMessage_Level_Set(handle CGoHandle, val *C.char) {
6530
- op := ptrFromHandle_linksocks_LogMessage(handle)
6531
- op.Level = C.GoString(val)
6587
+ //export linksocks_RelayOption_MinBatchWaitTime_Get
6588
+ func linksocks_RelayOption_MinBatchWaitTime_Get(handle CGoHandle) C.longlong {
6589
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6590
+ return C.longlong(int64(op.MinBatchWaitTime))
6532
6591
  }
6533
6592
 
6534
- //export linksocks_LogMessage_Msg_Get
6535
- func linksocks_LogMessage_Msg_Get(handle CGoHandle) *C.char {
6536
- op := ptrFromHandle_linksocks_LogMessage(handle)
6537
- return C.CString(op.Msg)
6593
+ //export linksocks_RelayOption_MinBatchWaitTime_Set
6594
+ func linksocks_RelayOption_MinBatchWaitTime_Set(handle CGoHandle, val C.longlong) {
6595
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6596
+ op.MinBatchWaitTime = time.Duration(int64(val))
6538
6597
  }
6539
6598
 
6540
- //export linksocks_LogMessage_Msg_Set
6541
- func linksocks_LogMessage_Msg_Set(handle CGoHandle, val *C.char) {
6542
- op := ptrFromHandle_linksocks_LogMessage(handle)
6543
- op.Msg = C.GoString(val)
6599
+ //export linksocks_RelayOption_HighSpeedThreshold_Get
6600
+ func linksocks_RelayOption_HighSpeedThreshold_Get(handle CGoHandle) C.double {
6601
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6602
+ return C.double(op.HighSpeedThreshold)
6544
6603
  }
6545
6604
 
6546
- //export linksocks_LogMessage_GetType
6547
- func linksocks_LogMessage_GetType(_handle CGoHandle) *C.char {
6548
- _saved_thread := C.PyEval_SaveThread()
6549
- defer C.PyEval_RestoreThread(_saved_thread)
6550
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LogMessage")
6551
- if __err != nil {
6552
- return C.CString("")
6553
- }
6554
- return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.LogMessage{})).(*linksocks.LogMessage).GetType())
6605
+ //export linksocks_RelayOption_HighSpeedThreshold_Set
6606
+ func linksocks_RelayOption_HighSpeedThreshold_Set(handle CGoHandle, val C.double) {
6607
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6608
+ op.HighSpeedThreshold = float64(val)
6609
+ }
6555
6610
 
6611
+ //export linksocks_RelayOption_LowSpeedThreshold_Get
6612
+ func linksocks_RelayOption_LowSpeedThreshold_Get(handle CGoHandle) C.double {
6613
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6614
+ return C.double(op.LowSpeedThreshold)
6556
6615
  }
6557
6616
 
6558
- // --- wrapping struct: linksocks.Relay ---
6559
- //
6560
- //export linksocks_Relay_CTor
6561
- func linksocks_Relay_CTor() CGoHandle {
6562
- return CGoHandle(handleFromPtr_linksocks_Relay(&linksocks.Relay{}))
6617
+ //export linksocks_RelayOption_LowSpeedThreshold_Set
6618
+ func linksocks_RelayOption_LowSpeedThreshold_Set(handle CGoHandle, val C.double) {
6619
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6620
+ op.LowSpeedThreshold = float64(val)
6563
6621
  }
6564
6622
 
6565
- //export linksocks_Relay_RefuseSocksRequest
6566
- func linksocks_Relay_RefuseSocksRequest(_handle CGoHandle, conn CGoHandle, reason C.char) *C.char {
6567
- _saved_thread := C.PyEval_SaveThread()
6568
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
6569
- if __err != nil {
6570
- return errorGoToPy(nil)
6571
- }
6572
- __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).RefuseSocksRequest(ptrFromHandle_net_Conn(conn), byte(reason))
6623
+ //export linksocks_RelayOption_CompressionThreshold_Get
6624
+ func linksocks_RelayOption_CompressionThreshold_Get(handle CGoHandle) C.longlong {
6625
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6626
+ return C.longlong(op.CompressionThreshold)
6627
+ }
6573
6628
 
6574
- C.PyEval_RestoreThread(_saved_thread)
6575
- if __err != nil {
6576
- estr := C.CString(__err.Error())
6577
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
6578
- return estr
6579
- }
6580
- return C.CString("")
6629
+ //export linksocks_RelayOption_CompressionThreshold_Set
6630
+ func linksocks_RelayOption_CompressionThreshold_Set(handle CGoHandle, val C.longlong) {
6631
+ op := ptrFromHandle_linksocks_RelayOption(handle)
6632
+ op.CompressionThreshold = int(val)
6581
6633
  }
6582
6634
 
6583
- //export linksocks_Relay_HandleNetworkConnection
6584
- func linksocks_Relay_HandleNetworkConnection(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, request CGoHandle) *C.char {
6635
+ //export linksocks_RelayOption_WithBufferSize
6636
+ func linksocks_RelayOption_WithBufferSize(_handle CGoHandle, size C.longlong) CGoHandle {
6585
6637
  _saved_thread := C.PyEval_SaveThread()
6586
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
6587
- if __err != nil {
6588
- return errorGoToPy(nil)
6589
- }
6590
- __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleNetworkConnection(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), *ptrFromHandle_linksocks_ConnectMessage(request))
6591
-
6592
- C.PyEval_RestoreThread(_saved_thread)
6638
+ defer C.PyEval_RestoreThread(_saved_thread)
6639
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6593
6640
  if __err != nil {
6594
- estr := C.CString(__err.Error())
6595
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
6596
- return estr
6641
+ return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6597
6642
  }
6598
- return C.CString("")
6643
+ return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithBufferSize(int(size)))
6644
+
6599
6645
  }
6600
6646
 
6601
- //export linksocks_Relay_HandleTCPConnection
6602
- func linksocks_Relay_HandleTCPConnection(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, request CGoHandle) *C.char {
6647
+ //export linksocks_RelayOption_WithChannelTimeout
6648
+ func linksocks_RelayOption_WithChannelTimeout(_handle CGoHandle, timeout C.longlong) CGoHandle {
6603
6649
  _saved_thread := C.PyEval_SaveThread()
6604
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
6650
+ defer C.PyEval_RestoreThread(_saved_thread)
6651
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6605
6652
  if __err != nil {
6606
- return errorGoToPy(nil)
6653
+ return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6607
6654
  }
6608
- __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleTCPConnection(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), *ptrFromHandle_linksocks_ConnectMessage(request))
6655
+ return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithChannelTimeout(time.Duration(int64(timeout))))
6609
6656
 
6610
- C.PyEval_RestoreThread(_saved_thread)
6611
- if __err != nil {
6612
- estr := C.CString(__err.Error())
6613
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
6614
- return estr
6615
- }
6616
- return C.CString("")
6617
6657
  }
6618
6658
 
6619
- //export linksocks_Relay_HandleUDPConnection
6620
- func linksocks_Relay_HandleUDPConnection(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, request CGoHandle) *C.char {
6659
+ //export linksocks_RelayOption_WithConnectTimeout
6660
+ func linksocks_RelayOption_WithConnectTimeout(_handle CGoHandle, timeout C.longlong) CGoHandle {
6621
6661
  _saved_thread := C.PyEval_SaveThread()
6622
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
6662
+ defer C.PyEval_RestoreThread(_saved_thread)
6663
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6623
6664
  if __err != nil {
6624
- return errorGoToPy(nil)
6665
+ return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6625
6666
  }
6626
- __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleUDPConnection(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), *ptrFromHandle_linksocks_ConnectMessage(request))
6667
+ return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithConnectTimeout(time.Duration(int64(timeout))))
6627
6668
 
6628
- C.PyEval_RestoreThread(_saved_thread)
6629
- if __err != nil {
6630
- estr := C.CString(__err.Error())
6631
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
6632
- return estr
6633
- }
6634
- return C.CString("")
6635
6669
  }
6636
6670
 
6637
- //export linksocks_Relay_HandleSocksRequest
6638
- func linksocks_Relay_HandleSocksRequest(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, socksConn CGoHandle, socksUsername *C.char, socksPassword *C.char) *C.char {
6671
+ //export linksocks_RelayOption_WithFastOpen
6672
+ func linksocks_RelayOption_WithFastOpen(_handle CGoHandle, fastOpen C.char) CGoHandle {
6639
6673
  _saved_thread := C.PyEval_SaveThread()
6640
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
6674
+ defer C.PyEval_RestoreThread(_saved_thread)
6675
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6641
6676
  if __err != nil {
6642
- return errorGoToPy(nil)
6677
+ return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6643
6678
  }
6644
- __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleSocksRequest(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), ptrFromHandle_net_Conn(socksConn), C.GoString(socksUsername), C.GoString(socksPassword))
6679
+ return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithFastOpen(boolPyToGo(fastOpen)))
6645
6680
 
6646
- C.PyEval_RestoreThread(_saved_thread)
6647
- if __err != nil {
6648
- estr := C.CString(__err.Error())
6649
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
6650
- return estr
6651
- }
6652
- return C.CString("")
6653
6681
  }
6654
6682
 
6655
- //export linksocks_Relay_HandleRemoteTCPForward
6656
- func linksocks_Relay_HandleRemoteTCPForward(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, remoteConn CGoHandle, channelID CGoHandle) *C.char {
6683
+ //export linksocks_RelayOption_WithUpstreamProxy
6684
+ func linksocks_RelayOption_WithUpstreamProxy(_handle CGoHandle, proxy *C.char) CGoHandle {
6657
6685
  _saved_thread := C.PyEval_SaveThread()
6658
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
6686
+ defer C.PyEval_RestoreThread(_saved_thread)
6687
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6659
6688
  if __err != nil {
6660
- return errorGoToPy(nil)
6689
+ return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6661
6690
  }
6662
- __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleRemoteTCPForward(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), ptrFromHandle_net_Conn(remoteConn), deptrFromHandle_uuid_UUID(channelID))
6691
+ return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithUpstreamProxy(C.GoString(proxy)))
6663
6692
 
6664
- C.PyEval_RestoreThread(_saved_thread)
6665
- if __err != nil {
6666
- estr := C.CString(__err.Error())
6667
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
6668
- return estr
6669
- }
6670
- return C.CString("")
6671
6693
  }
6672
6694
 
6673
- //export linksocks_Relay_HandleRemoteUDPForward
6674
- func linksocks_Relay_HandleRemoteUDPForward(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, udpConn CGoHandle, channelID CGoHandle) *C.char {
6695
+ //export linksocks_RelayOption_WithUpstreamAuth
6696
+ func linksocks_RelayOption_WithUpstreamAuth(_handle CGoHandle, username *C.char, password *C.char) CGoHandle {
6675
6697
  _saved_thread := C.PyEval_SaveThread()
6676
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
6698
+ defer C.PyEval_RestoreThread(_saved_thread)
6699
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6677
6700
  if __err != nil {
6678
- return errorGoToPy(nil)
6701
+ return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6679
6702
  }
6680
- __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleRemoteUDPForward(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), ptrFromHandle_Ptr_net_UDPConn(udpConn), deptrFromHandle_uuid_UUID(channelID))
6703
+ return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithUpstreamAuth(C.GoString(username), C.GoString(password)))
6681
6704
 
6682
- C.PyEval_RestoreThread(_saved_thread)
6683
- if __err != nil {
6684
- estr := C.CString(__err.Error())
6685
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
6686
- return estr
6687
- }
6688
- return C.CString("")
6689
6705
  }
6690
6706
 
6691
- //export linksocks_Relay_HandleSocksTCPForward
6692
- func linksocks_Relay_HandleSocksTCPForward(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, socksConn CGoHandle, channelID CGoHandle) *C.char {
6707
+ //export linksocks_RelayOption_WithDynamicBatching
6708
+ func linksocks_RelayOption_WithDynamicBatching(_handle CGoHandle, enabled C.char) CGoHandle {
6693
6709
  _saved_thread := C.PyEval_SaveThread()
6694
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
6710
+ defer C.PyEval_RestoreThread(_saved_thread)
6711
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6695
6712
  if __err != nil {
6696
- return errorGoToPy(nil)
6713
+ return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6697
6714
  }
6698
- __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleSocksTCPForward(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), ptrFromHandle_net_Conn(socksConn), deptrFromHandle_uuid_UUID(channelID))
6715
+ return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithDynamicBatching(boolPyToGo(enabled)))
6699
6716
 
6700
- C.PyEval_RestoreThread(_saved_thread)
6701
- if __err != nil {
6702
- estr := C.CString(__err.Error())
6703
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
6704
- return estr
6705
- }
6706
- return C.CString("")
6707
6717
  }
6708
6718
 
6709
- //export linksocks_Relay_HandleSocksUDPForward
6710
- func linksocks_Relay_HandleSocksUDPForward(_handle CGoHandle, ctx CGoHandle, ws CGoHandle, udpConn CGoHandle, socksConn CGoHandle, channelID CGoHandle) *C.char {
6719
+ //export linksocks_RelayOption_WithBatchingTimeLimits
6720
+ func linksocks_RelayOption_WithBatchingTimeLimits(_handle CGoHandle, min C.longlong, max C.longlong) CGoHandle {
6711
6721
  _saved_thread := C.PyEval_SaveThread()
6712
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
6722
+ defer C.PyEval_RestoreThread(_saved_thread)
6723
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6713
6724
  if __err != nil {
6714
- return errorGoToPy(nil)
6725
+ return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6715
6726
  }
6716
- __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).HandleSocksUDPForward(ptrFromHandle_context_Context(ctx), ptrFromHandle_Ptr_linksocks_WSConn(ws), ptrFromHandle_Ptr_net_UDPConn(udpConn), ptrFromHandle_net_Conn(socksConn), deptrFromHandle_uuid_UUID(channelID))
6727
+ return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithBatchingTimeLimits(time.Duration(int64(min)), time.Duration(int64(max))))
6717
6728
 
6718
- C.PyEval_RestoreThread(_saved_thread)
6729
+ }
6730
+
6731
+ //export linksocks_RelayOption_WithHighSpeedThreshold
6732
+ func linksocks_RelayOption_WithHighSpeedThreshold(_handle CGoHandle, threshold C.double) CGoHandle {
6733
+ _saved_thread := C.PyEval_SaveThread()
6734
+ defer C.PyEval_RestoreThread(_saved_thread)
6735
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6719
6736
  if __err != nil {
6720
- estr := C.CString(__err.Error())
6721
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
6722
- return estr
6737
+ return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6723
6738
  }
6724
- return C.CString("")
6739
+ return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithHighSpeedThreshold(float64(threshold)))
6740
+
6725
6741
  }
6726
6742
 
6727
- //export linksocks_Relay_Close
6728
- func linksocks_Relay_Close(_handle CGoHandle, goRun C.char) {
6743
+ //export linksocks_RelayOption_WithLowSpeedThreshold
6744
+ func linksocks_RelayOption_WithLowSpeedThreshold(_handle CGoHandle, threshold C.double) CGoHandle {
6729
6745
  _saved_thread := C.PyEval_SaveThread()
6730
6746
  defer C.PyEval_RestoreThread(_saved_thread)
6731
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
6747
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6732
6748
  if __err != nil {
6733
- return
6734
- }
6735
- if boolPyToGo(goRun) {
6736
- go gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).Close()
6737
- } else {
6738
- gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).Close()
6749
+ return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6739
6750
  }
6751
+ return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithLowSpeedThreshold(float64(threshold)))
6752
+
6740
6753
  }
6741
6754
 
6742
- //export linksocks_Relay_SetConnectionSuccess
6743
- func linksocks_Relay_SetConnectionSuccess(_handle CGoHandle, channelID CGoHandle, goRun C.char) {
6755
+ //export linksocks_RelayOption_WithCompressionThreshold
6756
+ func linksocks_RelayOption_WithCompressionThreshold(_handle CGoHandle, threshold C.longlong) CGoHandle {
6744
6757
  _saved_thread := C.PyEval_SaveThread()
6745
6758
  defer C.PyEval_RestoreThread(_saved_thread)
6746
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.Relay")
6759
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.RelayOption")
6747
6760
  if __err != nil {
6748
- return
6749
- }
6750
- if boolPyToGo(goRun) {
6751
- go gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).SetConnectionSuccess(deptrFromHandle_uuid_UUID(channelID))
6752
- } else {
6753
- gopyh.Embed(vifc, reflect.TypeOf(linksocks.Relay{})).(*linksocks.Relay).SetConnectionSuccess(deptrFromHandle_uuid_UUID(channelID))
6761
+ return handleFromPtr_Ptr_linksocks_RelayOption(nil)
6754
6762
  }
6763
+ return handleFromPtr_Ptr_linksocks_RelayOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.RelayOption{})).(*linksocks.RelayOption).WithCompressionThreshold(int(threshold)))
6764
+
6755
6765
  }
6756
6766
 
6757
6767
  // --- wrapping struct: linksocks.ReverseTokenOptions ---
@@ -6821,444 +6831,445 @@ func linksocks_ReverseTokenOptions_AllowManageConnector_Set(handle CGoHandle, va
6821
6831
  op.AllowManageConnector = boolPyToGo(val)
6822
6832
  }
6823
6833
 
6824
- // --- wrapping struct: linksocks.AuthMessage ---
6834
+ // --- wrapping struct: linksocks.TokenStatus ---
6825
6835
  //
6826
- //export linksocks_AuthMessage_CTor
6827
- func linksocks_AuthMessage_CTor() CGoHandle {
6828
- return CGoHandle(handleFromPtr_linksocks_AuthMessage(&linksocks.AuthMessage{}))
6836
+ //export linksocks_TokenStatus_CTor
6837
+ func linksocks_TokenStatus_CTor() CGoHandle {
6838
+ return CGoHandle(handleFromPtr_linksocks_TokenStatus(&linksocks.TokenStatus{}))
6829
6839
  }
6830
6840
 
6831
- //export linksocks_AuthMessage_Token_Get
6832
- func linksocks_AuthMessage_Token_Get(handle CGoHandle) *C.char {
6833
- op := ptrFromHandle_linksocks_AuthMessage(handle)
6841
+ //export linksocks_TokenStatus_Token_Get
6842
+ func linksocks_TokenStatus_Token_Get(handle CGoHandle) *C.char {
6843
+ op := ptrFromHandle_linksocks_TokenStatus(handle)
6834
6844
  return C.CString(op.Token)
6835
6845
  }
6836
6846
 
6837
- //export linksocks_AuthMessage_Token_Set
6838
- func linksocks_AuthMessage_Token_Set(handle CGoHandle, val *C.char) {
6839
- op := ptrFromHandle_linksocks_AuthMessage(handle)
6847
+ //export linksocks_TokenStatus_Token_Set
6848
+ func linksocks_TokenStatus_Token_Set(handle CGoHandle, val *C.char) {
6849
+ op := ptrFromHandle_linksocks_TokenStatus(handle)
6840
6850
  op.Token = C.GoString(val)
6841
6851
  }
6842
6852
 
6843
- //export linksocks_AuthMessage_Reverse_Get
6844
- func linksocks_AuthMessage_Reverse_Get(handle CGoHandle) C.char {
6845
- op := ptrFromHandle_linksocks_AuthMessage(handle)
6846
- return boolGoToPy(op.Reverse)
6853
+ //export linksocks_TokenStatus_Type_Get
6854
+ func linksocks_TokenStatus_Type_Get(handle CGoHandle) *C.char {
6855
+ op := ptrFromHandle_linksocks_TokenStatus(handle)
6856
+ return C.CString(op.Type)
6847
6857
  }
6848
6858
 
6849
- //export linksocks_AuthMessage_Reverse_Set
6850
- func linksocks_AuthMessage_Reverse_Set(handle CGoHandle, val C.char) {
6851
- op := ptrFromHandle_linksocks_AuthMessage(handle)
6852
- op.Reverse = boolPyToGo(val)
6859
+ //export linksocks_TokenStatus_Type_Set
6860
+ func linksocks_TokenStatus_Type_Set(handle CGoHandle, val *C.char) {
6861
+ op := ptrFromHandle_linksocks_TokenStatus(handle)
6862
+ op.Type = C.GoString(val)
6853
6863
  }
6854
6864
 
6855
- //export linksocks_AuthMessage_Instance_Get
6856
- func linksocks_AuthMessage_Instance_Get(handle CGoHandle) CGoHandle {
6857
- op := ptrFromHandle_linksocks_AuthMessage(handle)
6858
- return handleFromPtr_uuid_UUID(&op.Instance)
6865
+ //export linksocks_TokenStatus_ClientsCount_Get
6866
+ func linksocks_TokenStatus_ClientsCount_Get(handle CGoHandle) C.longlong {
6867
+ op := ptrFromHandle_linksocks_TokenStatus(handle)
6868
+ return C.longlong(op.ClientsCount)
6859
6869
  }
6860
6870
 
6861
- //export linksocks_AuthMessage_GetType
6862
- func linksocks_AuthMessage_GetType(_handle CGoHandle) *C.char {
6871
+ //export linksocks_TokenStatus_ClientsCount_Set
6872
+ func linksocks_TokenStatus_ClientsCount_Set(handle CGoHandle, val C.longlong) {
6873
+ op := ptrFromHandle_linksocks_TokenStatus(handle)
6874
+ op.ClientsCount = int(val)
6875
+ }
6876
+
6877
+ // --- wrapping struct: linksocks.DisconnectMessage ---
6878
+ //
6879
+ //export linksocks_DisconnectMessage_CTor
6880
+ func linksocks_DisconnectMessage_CTor() CGoHandle {
6881
+ return CGoHandle(handleFromPtr_linksocks_DisconnectMessage(&linksocks.DisconnectMessage{}))
6882
+ }
6883
+
6884
+ //export linksocks_DisconnectMessage_ChannelID_Get
6885
+ func linksocks_DisconnectMessage_ChannelID_Get(handle CGoHandle) CGoHandle {
6886
+ op := ptrFromHandle_linksocks_DisconnectMessage(handle)
6887
+ return handleFromPtr_uuid_UUID(&op.ChannelID)
6888
+ }
6889
+
6890
+ //export linksocks_DisconnectMessage_Error_Get
6891
+ func linksocks_DisconnectMessage_Error_Get(handle CGoHandle) *C.char {
6892
+ op := ptrFromHandle_linksocks_DisconnectMessage(handle)
6893
+ return C.CString(op.Error)
6894
+ }
6895
+
6896
+ //export linksocks_DisconnectMessage_Error_Set
6897
+ func linksocks_DisconnectMessage_Error_Set(handle CGoHandle, val *C.char) {
6898
+ op := ptrFromHandle_linksocks_DisconnectMessage(handle)
6899
+ op.Error = C.GoString(val)
6900
+ }
6901
+
6902
+ //export linksocks_DisconnectMessage_GetType
6903
+ func linksocks_DisconnectMessage_GetType(_handle CGoHandle) *C.char {
6863
6904
  _saved_thread := C.PyEval_SaveThread()
6864
6905
  defer C.PyEval_RestoreThread(_saved_thread)
6865
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.AuthMessage")
6906
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.DisconnectMessage")
6866
6907
  if __err != nil {
6867
6908
  return C.CString("")
6868
6909
  }
6869
- return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.AuthMessage{})).(*linksocks.AuthMessage).GetType())
6910
+ return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.DisconnectMessage{})).(*linksocks.DisconnectMessage).GetType())
6911
+
6912
+ }
6913
+
6914
+ // --- wrapping struct: linksocks.ReverseTokenStatus ---
6915
+ //
6916
+ //export linksocks_ReverseTokenStatus_CTor
6917
+ func linksocks_ReverseTokenStatus_CTor() CGoHandle {
6918
+ return CGoHandle(handleFromPtr_linksocks_ReverseTokenStatus(&linksocks.ReverseTokenStatus{}))
6919
+ }
6870
6920
 
6921
+ //export linksocks_ReverseTokenStatus_Port_Get
6922
+ func linksocks_ReverseTokenStatus_Port_Get(handle CGoHandle) C.longlong {
6923
+ op := ptrFromHandle_linksocks_ReverseTokenStatus(handle)
6924
+ return C.longlong(op.Port)
6871
6925
  }
6872
6926
 
6873
- // --- wrapping struct: linksocks.CLI ---
6874
- //
6875
- //export linksocks_CLI_CTor
6876
- func linksocks_CLI_CTor() CGoHandle {
6877
- return CGoHandle(handleFromPtr_linksocks_CLI(&linksocks.CLI{}))
6927
+ //export linksocks_ReverseTokenStatus_Port_Set
6928
+ func linksocks_ReverseTokenStatus_Port_Set(handle CGoHandle, val C.longlong) {
6929
+ op := ptrFromHandle_linksocks_ReverseTokenStatus(handle)
6930
+ op.Port = int(val)
6878
6931
  }
6879
6932
 
6880
- //export linksocks_CLI_Execute
6881
- func linksocks_CLI_Execute(_handle CGoHandle) *C.char {
6882
- _saved_thread := C.PyEval_SaveThread()
6883
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.CLI")
6884
- if __err != nil {
6885
- return errorGoToPy(nil)
6886
- }
6887
- __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.CLI{})).(*linksocks.CLI).Execute()
6933
+ //export linksocks_ReverseTokenStatus_ConnectorTokens_Get
6934
+ func linksocks_ReverseTokenStatus_ConnectorTokens_Get(handle CGoHandle) CGoHandle {
6935
+ op := ptrFromHandle_linksocks_ReverseTokenStatus(handle)
6936
+ return handleFromPtr_Slice_string(&op.ConnectorTokens)
6937
+ }
6888
6938
 
6889
- C.PyEval_RestoreThread(_saved_thread)
6890
- if __err != nil {
6891
- estr := C.CString(__err.Error())
6892
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
6893
- return estr
6894
- }
6895
- return C.CString("")
6939
+ //export linksocks_ReverseTokenStatus_ConnectorTokens_Set
6940
+ func linksocks_ReverseTokenStatus_ConnectorTokens_Set(handle CGoHandle, val CGoHandle) {
6941
+ op := ptrFromHandle_linksocks_ReverseTokenStatus(handle)
6942
+ op.ConnectorTokens = deptrFromHandle_Slice_string(val)
6896
6943
  }
6897
6944
 
6898
- // --- wrapping struct: linksocks.DataMessage ---
6945
+ // --- wrapping struct: linksocks.ServerOption ---
6899
6946
  //
6900
- //export linksocks_DataMessage_CTor
6901
- func linksocks_DataMessage_CTor() CGoHandle {
6902
- return CGoHandle(handleFromPtr_linksocks_DataMessage(&linksocks.DataMessage{}))
6947
+ //export linksocks_ServerOption_CTor
6948
+ func linksocks_ServerOption_CTor() CGoHandle {
6949
+ return CGoHandle(handleFromPtr_linksocks_ServerOption(&linksocks.ServerOption{}))
6903
6950
  }
6904
6951
 
6905
- //export linksocks_DataMessage_Protocol_Get
6906
- func linksocks_DataMessage_Protocol_Get(handle CGoHandle) *C.char {
6907
- op := ptrFromHandle_linksocks_DataMessage(handle)
6908
- return C.CString(op.Protocol)
6952
+ //export linksocks_ServerOption_WSHost_Get
6953
+ func linksocks_ServerOption_WSHost_Get(handle CGoHandle) *C.char {
6954
+ op := ptrFromHandle_linksocks_ServerOption(handle)
6955
+ return C.CString(op.WSHost)
6909
6956
  }
6910
6957
 
6911
- //export linksocks_DataMessage_Protocol_Set
6912
- func linksocks_DataMessage_Protocol_Set(handle CGoHandle, val *C.char) {
6913
- op := ptrFromHandle_linksocks_DataMessage(handle)
6914
- op.Protocol = C.GoString(val)
6958
+ //export linksocks_ServerOption_WSHost_Set
6959
+ func linksocks_ServerOption_WSHost_Set(handle CGoHandle, val *C.char) {
6960
+ op := ptrFromHandle_linksocks_ServerOption(handle)
6961
+ op.WSHost = C.GoString(val)
6915
6962
  }
6916
6963
 
6917
- //export linksocks_DataMessage_ChannelID_Get
6918
- func linksocks_DataMessage_ChannelID_Get(handle CGoHandle) CGoHandle {
6919
- op := ptrFromHandle_linksocks_DataMessage(handle)
6920
- return handleFromPtr_uuid_UUID(&op.ChannelID)
6964
+ //export linksocks_ServerOption_WSPort_Get
6965
+ func linksocks_ServerOption_WSPort_Get(handle CGoHandle) C.longlong {
6966
+ op := ptrFromHandle_linksocks_ServerOption(handle)
6967
+ return C.longlong(op.WSPort)
6921
6968
  }
6922
6969
 
6923
- //export linksocks_DataMessage_Data_Get
6924
- func linksocks_DataMessage_Data_Get(handle CGoHandle) CGoHandle {
6925
- op := ptrFromHandle_linksocks_DataMessage(handle)
6926
- return handleFromPtr_Slice_byte(&op.Data)
6970
+ //export linksocks_ServerOption_WSPort_Set
6971
+ func linksocks_ServerOption_WSPort_Set(handle CGoHandle, val C.longlong) {
6972
+ op := ptrFromHandle_linksocks_ServerOption(handle)
6973
+ op.WSPort = int(val)
6927
6974
  }
6928
6975
 
6929
- //export linksocks_DataMessage_Data_Set
6930
- func linksocks_DataMessage_Data_Set(handle CGoHandle, val CGoHandle) {
6931
- op := ptrFromHandle_linksocks_DataMessage(handle)
6932
- op.Data = deptrFromHandle_Slice_byte(val)
6976
+ //export linksocks_ServerOption_SocksHost_Get
6977
+ func linksocks_ServerOption_SocksHost_Get(handle CGoHandle) *C.char {
6978
+ op := ptrFromHandle_linksocks_ServerOption(handle)
6979
+ return C.CString(op.SocksHost)
6933
6980
  }
6934
6981
 
6935
- //export linksocks_DataMessage_Compression_Get
6936
- func linksocks_DataMessage_Compression_Get(handle CGoHandle) C.char {
6937
- op := ptrFromHandle_linksocks_DataMessage(handle)
6938
- return C.char(op.Compression)
6982
+ //export linksocks_ServerOption_SocksHost_Set
6983
+ func linksocks_ServerOption_SocksHost_Set(handle CGoHandle, val *C.char) {
6984
+ op := ptrFromHandle_linksocks_ServerOption(handle)
6985
+ op.SocksHost = C.GoString(val)
6939
6986
  }
6940
6987
 
6941
- //export linksocks_DataMessage_Compression_Set
6942
- func linksocks_DataMessage_Compression_Set(handle CGoHandle, val C.char) {
6943
- op := ptrFromHandle_linksocks_DataMessage(handle)
6944
- op.Compression = byte(val)
6988
+ //export linksocks_ServerOption_PortPool_Get
6989
+ func linksocks_ServerOption_PortPool_Get(handle CGoHandle) CGoHandle {
6990
+ op := ptrFromHandle_linksocks_ServerOption(handle)
6991
+ return handleFromPtr_Ptr_linksocks_PortPool(op.PortPool)
6945
6992
  }
6946
6993
 
6947
- //export linksocks_DataMessage_Address_Get
6948
- func linksocks_DataMessage_Address_Get(handle CGoHandle) *C.char {
6949
- op := ptrFromHandle_linksocks_DataMessage(handle)
6950
- return C.CString(op.Address)
6994
+ //export linksocks_ServerOption_PortPool_Set
6995
+ func linksocks_ServerOption_PortPool_Set(handle CGoHandle, val CGoHandle) {
6996
+ op := ptrFromHandle_linksocks_ServerOption(handle)
6997
+ op.PortPool = ptrFromHandle_Ptr_linksocks_PortPool(val)
6951
6998
  }
6952
6999
 
6953
- //export linksocks_DataMessage_Address_Set
6954
- func linksocks_DataMessage_Address_Set(handle CGoHandle, val *C.char) {
6955
- op := ptrFromHandle_linksocks_DataMessage(handle)
6956
- op.Address = C.GoString(val)
7000
+ //export linksocks_ServerOption_SocksWaitClient_Get
7001
+ func linksocks_ServerOption_SocksWaitClient_Get(handle CGoHandle) C.char {
7002
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7003
+ return boolGoToPy(op.SocksWaitClient)
6957
7004
  }
6958
7005
 
6959
- //export linksocks_DataMessage_Port_Get
6960
- func linksocks_DataMessage_Port_Get(handle CGoHandle) C.longlong {
6961
- op := ptrFromHandle_linksocks_DataMessage(handle)
6962
- return C.longlong(op.Port)
7006
+ //export linksocks_ServerOption_SocksWaitClient_Set
7007
+ func linksocks_ServerOption_SocksWaitClient_Set(handle CGoHandle, val C.char) {
7008
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7009
+ op.SocksWaitClient = boolPyToGo(val)
6963
7010
  }
6964
7011
 
6965
- //export linksocks_DataMessage_Port_Set
6966
- func linksocks_DataMessage_Port_Set(handle CGoHandle, val C.longlong) {
6967
- op := ptrFromHandle_linksocks_DataMessage(handle)
6968
- op.Port = int(val)
7012
+ //export linksocks_ServerOption_Logger_Get
7013
+ func linksocks_ServerOption_Logger_Get(handle CGoHandle) CGoHandle {
7014
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7015
+ return handleFromPtr_zerolog_Logger(&op.Logger)
6969
7016
  }
6970
7017
 
6971
- //export linksocks_DataMessage_TargetAddr_Get
6972
- func linksocks_DataMessage_TargetAddr_Get(handle CGoHandle) *C.char {
6973
- op := ptrFromHandle_linksocks_DataMessage(handle)
6974
- return C.CString(op.TargetAddr)
7018
+ //export linksocks_ServerOption_Logger_Set
7019
+ func linksocks_ServerOption_Logger_Set(handle CGoHandle, val CGoHandle) {
7020
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7021
+ op.Logger = *ptrFromHandle_zerolog_Logger(val)
6975
7022
  }
6976
7023
 
6977
- //export linksocks_DataMessage_TargetAddr_Set
6978
- func linksocks_DataMessage_TargetAddr_Set(handle CGoHandle, val *C.char) {
6979
- op := ptrFromHandle_linksocks_DataMessage(handle)
6980
- op.TargetAddr = C.GoString(val)
7024
+ //export linksocks_ServerOption_BufferSize_Get
7025
+ func linksocks_ServerOption_BufferSize_Get(handle CGoHandle) C.longlong {
7026
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7027
+ return C.longlong(op.BufferSize)
6981
7028
  }
6982
7029
 
6983
- //export linksocks_DataMessage_TargetPort_Get
6984
- func linksocks_DataMessage_TargetPort_Get(handle CGoHandle) C.longlong {
6985
- op := ptrFromHandle_linksocks_DataMessage(handle)
6986
- return C.longlong(op.TargetPort)
7030
+ //export linksocks_ServerOption_BufferSize_Set
7031
+ func linksocks_ServerOption_BufferSize_Set(handle CGoHandle, val C.longlong) {
7032
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7033
+ op.BufferSize = int(val)
6987
7034
  }
6988
7035
 
6989
- //export linksocks_DataMessage_TargetPort_Set
6990
- func linksocks_DataMessage_TargetPort_Set(handle CGoHandle, val C.longlong) {
6991
- op := ptrFromHandle_linksocks_DataMessage(handle)
6992
- op.TargetPort = int(val)
7036
+ //export linksocks_ServerOption_APIKey_Get
7037
+ func linksocks_ServerOption_APIKey_Get(handle CGoHandle) *C.char {
7038
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7039
+ return C.CString(op.APIKey)
6993
7040
  }
6994
7041
 
6995
- //export linksocks_DataMessage_GetType
6996
- func linksocks_DataMessage_GetType(_handle CGoHandle) *C.char {
6997
- _saved_thread := C.PyEval_SaveThread()
6998
- defer C.PyEval_RestoreThread(_saved_thread)
6999
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.DataMessage")
7000
- if __err != nil {
7001
- return C.CString("")
7002
- }
7003
- return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.DataMessage{})).(*linksocks.DataMessage).GetType())
7004
-
7042
+ //export linksocks_ServerOption_APIKey_Set
7043
+ func linksocks_ServerOption_APIKey_Set(handle CGoHandle, val *C.char) {
7044
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7045
+ op.APIKey = C.GoString(val)
7005
7046
  }
7006
7047
 
7007
- // --- wrapping struct: linksocks.DynamicForwarder ---
7008
- //
7009
- //export linksocks_DynamicForwarder_CTor
7010
- func linksocks_DynamicForwarder_CTor() CGoHandle {
7011
- return CGoHandle(handleFromPtr_linksocks_DynamicForwarder(&linksocks.DynamicForwarder{}))
7048
+ //export linksocks_ServerOption_ChannelTimeout_Get
7049
+ func linksocks_ServerOption_ChannelTimeout_Get(handle CGoHandle) C.longlong {
7050
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7051
+ return C.longlong(int64(op.ChannelTimeout))
7012
7052
  }
7013
7053
 
7014
- //export linksocks_DynamicForwarder_ProcessReads
7015
- func linksocks_DynamicForwarder_ProcessReads(_handle CGoHandle, conn CGoHandle, goRun C.char) {
7016
- _saved_thread := C.PyEval_SaveThread()
7017
- defer C.PyEval_RestoreThread(_saved_thread)
7018
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.DynamicForwarder")
7019
- if __err != nil {
7020
- return
7021
- }
7022
- if boolPyToGo(goRun) {
7023
- go gopyh.Embed(vifc, reflect.TypeOf(linksocks.DynamicForwarder{})).(*linksocks.DynamicForwarder).ProcessReads(ptrFromHandle_io_Reader(conn))
7024
- } else {
7025
- gopyh.Embed(vifc, reflect.TypeOf(linksocks.DynamicForwarder{})).(*linksocks.DynamicForwarder).ProcessReads(ptrFromHandle_io_Reader(conn))
7026
- }
7054
+ //export linksocks_ServerOption_ChannelTimeout_Set
7055
+ func linksocks_ServerOption_ChannelTimeout_Set(handle CGoHandle, val C.longlong) {
7056
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7057
+ op.ChannelTimeout = time.Duration(int64(val))
7027
7058
  }
7028
7059
 
7029
- //export linksocks_DynamicForwarder_ProcessReadsImmediate
7030
- func linksocks_DynamicForwarder_ProcessReadsImmediate(_handle CGoHandle, conn CGoHandle, goRun C.char) {
7031
- _saved_thread := C.PyEval_SaveThread()
7032
- defer C.PyEval_RestoreThread(_saved_thread)
7033
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.DynamicForwarder")
7034
- if __err != nil {
7035
- return
7036
- }
7037
- if boolPyToGo(goRun) {
7038
- go gopyh.Embed(vifc, reflect.TypeOf(linksocks.DynamicForwarder{})).(*linksocks.DynamicForwarder).ProcessReadsImmediate(ptrFromHandle_io_Reader(conn))
7039
- } else {
7040
- gopyh.Embed(vifc, reflect.TypeOf(linksocks.DynamicForwarder{})).(*linksocks.DynamicForwarder).ProcessReadsImmediate(ptrFromHandle_io_Reader(conn))
7041
- }
7060
+ //export linksocks_ServerOption_ConnectTimeout_Get
7061
+ func linksocks_ServerOption_ConnectTimeout_Get(handle CGoHandle) C.longlong {
7062
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7063
+ return C.longlong(int64(op.ConnectTimeout))
7042
7064
  }
7043
7065
 
7044
- //export linksocks_DynamicForwarder_ProcessUDPReads
7045
- func linksocks_DynamicForwarder_ProcessUDPReads(_handle CGoHandle, conn CGoHandle, goRun C.char) {
7046
- _saved_thread := C.PyEval_SaveThread()
7047
- defer C.PyEval_RestoreThread(_saved_thread)
7048
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.DynamicForwarder")
7049
- if __err != nil {
7050
- return
7051
- }
7052
- if boolPyToGo(goRun) {
7053
- go gopyh.Embed(vifc, reflect.TypeOf(linksocks.DynamicForwarder{})).(*linksocks.DynamicForwarder).ProcessUDPReads(ptrFromHandle_Ptr_net_UDPConn(conn))
7054
- } else {
7055
- gopyh.Embed(vifc, reflect.TypeOf(linksocks.DynamicForwarder{})).(*linksocks.DynamicForwarder).ProcessUDPReads(ptrFromHandle_Ptr_net_UDPConn(conn))
7056
- }
7066
+ //export linksocks_ServerOption_ConnectTimeout_Set
7067
+ func linksocks_ServerOption_ConnectTimeout_Set(handle CGoHandle, val C.longlong) {
7068
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7069
+ op.ConnectTimeout = time.Duration(int64(val))
7057
7070
  }
7058
7071
 
7059
- // --- wrapping struct: linksocks.TokenStatus ---
7060
- //
7061
- //export linksocks_TokenStatus_CTor
7062
- func linksocks_TokenStatus_CTor() CGoHandle {
7063
- return CGoHandle(handleFromPtr_linksocks_TokenStatus(&linksocks.TokenStatus{}))
7072
+ //export linksocks_ServerOption_FastOpen_Get
7073
+ func linksocks_ServerOption_FastOpen_Get(handle CGoHandle) C.char {
7074
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7075
+ return boolGoToPy(op.FastOpen)
7064
7076
  }
7065
7077
 
7066
- //export linksocks_TokenStatus_Token_Get
7067
- func linksocks_TokenStatus_Token_Get(handle CGoHandle) *C.char {
7068
- op := ptrFromHandle_linksocks_TokenStatus(handle)
7069
- return C.CString(op.Token)
7078
+ //export linksocks_ServerOption_FastOpen_Set
7079
+ func linksocks_ServerOption_FastOpen_Set(handle CGoHandle, val C.char) {
7080
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7081
+ op.FastOpen = boolPyToGo(val)
7070
7082
  }
7071
7083
 
7072
- //export linksocks_TokenStatus_Token_Set
7073
- func linksocks_TokenStatus_Token_Set(handle CGoHandle, val *C.char) {
7074
- op := ptrFromHandle_linksocks_TokenStatus(handle)
7075
- op.Token = C.GoString(val)
7084
+ //export linksocks_ServerOption_UpstreamProxy_Get
7085
+ func linksocks_ServerOption_UpstreamProxy_Get(handle CGoHandle) *C.char {
7086
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7087
+ return C.CString(op.UpstreamProxy)
7076
7088
  }
7077
7089
 
7078
- //export linksocks_TokenStatus_Type_Get
7079
- func linksocks_TokenStatus_Type_Get(handle CGoHandle) *C.char {
7080
- op := ptrFromHandle_linksocks_TokenStatus(handle)
7081
- return C.CString(op.Type)
7090
+ //export linksocks_ServerOption_UpstreamProxy_Set
7091
+ func linksocks_ServerOption_UpstreamProxy_Set(handle CGoHandle, val *C.char) {
7092
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7093
+ op.UpstreamProxy = C.GoString(val)
7082
7094
  }
7083
7095
 
7084
- //export linksocks_TokenStatus_Type_Set
7085
- func linksocks_TokenStatus_Type_Set(handle CGoHandle, val *C.char) {
7086
- op := ptrFromHandle_linksocks_TokenStatus(handle)
7087
- op.Type = C.GoString(val)
7096
+ //export linksocks_ServerOption_UpstreamUsername_Get
7097
+ func linksocks_ServerOption_UpstreamUsername_Get(handle CGoHandle) *C.char {
7098
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7099
+ return C.CString(op.UpstreamUsername)
7088
7100
  }
7089
7101
 
7090
- //export linksocks_TokenStatus_ClientsCount_Get
7091
- func linksocks_TokenStatus_ClientsCount_Get(handle CGoHandle) C.longlong {
7092
- op := ptrFromHandle_linksocks_TokenStatus(handle)
7093
- return C.longlong(op.ClientsCount)
7102
+ //export linksocks_ServerOption_UpstreamUsername_Set
7103
+ func linksocks_ServerOption_UpstreamUsername_Set(handle CGoHandle, val *C.char) {
7104
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7105
+ op.UpstreamUsername = C.GoString(val)
7094
7106
  }
7095
7107
 
7096
- //export linksocks_TokenStatus_ClientsCount_Set
7097
- func linksocks_TokenStatus_ClientsCount_Set(handle CGoHandle, val C.longlong) {
7098
- op := ptrFromHandle_linksocks_TokenStatus(handle)
7099
- op.ClientsCount = int(val)
7108
+ //export linksocks_ServerOption_UpstreamPassword_Get
7109
+ func linksocks_ServerOption_UpstreamPassword_Get(handle CGoHandle) *C.char {
7110
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7111
+ return C.CString(op.UpstreamPassword)
7100
7112
  }
7101
7113
 
7102
- // --- wrapping struct: linksocks.LinkSocksServer ---
7103
- //
7104
- //export linksocks_LinkSocksServer_CTor
7105
- func linksocks_LinkSocksServer_CTor() CGoHandle {
7106
- return CGoHandle(handleFromPtr_linksocks_LinkSocksServer(&linksocks.LinkSocksServer{}))
7114
+ //export linksocks_ServerOption_UpstreamPassword_Set
7115
+ func linksocks_ServerOption_UpstreamPassword_Set(handle CGoHandle, val *C.char) {
7116
+ op := ptrFromHandle_linksocks_ServerOption(handle)
7117
+ op.UpstreamPassword = C.GoString(val)
7107
7118
  }
7108
7119
 
7109
- //export linksocks_LinkSocksServer_AddReverseToken
7110
- func linksocks_LinkSocksServer_AddReverseToken(_handle CGoHandle, opts CGoHandle) CGoHandle {
7120
+ //export linksocks_ServerOption_WithWSHost
7121
+ func linksocks_ServerOption_WithWSHost(_handle CGoHandle, host *C.char) CGoHandle {
7111
7122
  _saved_thread := C.PyEval_SaveThread()
7112
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
7123
+ defer C.PyEval_RestoreThread(_saved_thread)
7124
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7113
7125
  if __err != nil {
7114
- return handleFromPtr_Ptr_linksocks_ReverseTokenResult(nil)
7126
+ return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7115
7127
  }
7116
- cret, __err := gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).AddReverseToken(ptrFromHandle_Ptr_linksocks_ReverseTokenOptions(opts))
7128
+ return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithWSHost(C.GoString(host)))
7117
7129
 
7118
- C.PyEval_RestoreThread(_saved_thread)
7119
- if __err != nil {
7120
- estr := C.CString(__err.Error())
7121
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
7122
- C.free(unsafe.Pointer(estr))
7123
- return handleFromPtr_Ptr_linksocks_ReverseTokenResult(nil)
7124
- }
7125
- return handleFromPtr_Ptr_linksocks_ReverseTokenResult(cret)
7126
7130
  }
7127
7131
 
7128
- //export linksocks_LinkSocksServer_AddForwardToken
7129
- func linksocks_LinkSocksServer_AddForwardToken(_handle CGoHandle, token *C.char) *C.char {
7132
+ //export linksocks_ServerOption_WithWSPort
7133
+ func linksocks_ServerOption_WithWSPort(_handle CGoHandle, port C.longlong) CGoHandle {
7130
7134
  _saved_thread := C.PyEval_SaveThread()
7131
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
7135
+ defer C.PyEval_RestoreThread(_saved_thread)
7136
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7132
7137
  if __err != nil {
7133
- return C.CString("")
7138
+ return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7134
7139
  }
7135
- cret, __err := gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).AddForwardToken(C.GoString(token))
7140
+ return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithWSPort(int(port)))
7136
7141
 
7137
- C.PyEval_RestoreThread(_saved_thread)
7138
- if __err != nil {
7139
- estr := C.CString(__err.Error())
7140
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
7141
- C.free(unsafe.Pointer(estr))
7142
- return C.CString("")
7143
- }
7144
- return C.CString(cret)
7145
7142
  }
7146
7143
 
7147
- //export linksocks_LinkSocksServer_AddConnectorToken
7148
- func linksocks_LinkSocksServer_AddConnectorToken(_handle CGoHandle, connectorToken *C.char, reverseToken *C.char) *C.char {
7144
+ //export linksocks_ServerOption_WithSocksHost
7145
+ func linksocks_ServerOption_WithSocksHost(_handle CGoHandle, host *C.char) CGoHandle {
7149
7146
  _saved_thread := C.PyEval_SaveThread()
7150
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
7147
+ defer C.PyEval_RestoreThread(_saved_thread)
7148
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7151
7149
  if __err != nil {
7152
- return C.CString("")
7150
+ return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7153
7151
  }
7154
- cret, __err := gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).AddConnectorToken(C.GoString(connectorToken), C.GoString(reverseToken))
7152
+ return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithSocksHost(C.GoString(host)))
7155
7153
 
7156
- C.PyEval_RestoreThread(_saved_thread)
7154
+ }
7155
+
7156
+ //export linksocks_ServerOption_WithPortPool
7157
+ func linksocks_ServerOption_WithPortPool(_handle CGoHandle, pool CGoHandle) CGoHandle {
7158
+ _saved_thread := C.PyEval_SaveThread()
7159
+ defer C.PyEval_RestoreThread(_saved_thread)
7160
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7157
7161
  if __err != nil {
7158
- estr := C.CString(__err.Error())
7159
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
7160
- C.free(unsafe.Pointer(estr))
7161
- return C.CString("")
7162
+ return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7162
7163
  }
7163
- return C.CString(cret)
7164
+ return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithPortPool(ptrFromHandle_Ptr_linksocks_PortPool(pool)))
7165
+
7164
7166
  }
7165
7167
 
7166
- //export linksocks_LinkSocksServer_RemoveToken
7167
- func linksocks_LinkSocksServer_RemoveToken(_handle CGoHandle, token *C.char) C.char {
7168
+ //export linksocks_ServerOption_WithSocksWaitClient
7169
+ func linksocks_ServerOption_WithSocksWaitClient(_handle CGoHandle, wait C.char) CGoHandle {
7168
7170
  _saved_thread := C.PyEval_SaveThread()
7169
7171
  defer C.PyEval_RestoreThread(_saved_thread)
7170
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
7172
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7171
7173
  if __err != nil {
7172
- return boolGoToPy(false)
7174
+ return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7173
7175
  }
7174
- return boolGoToPy(gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).RemoveToken(C.GoString(token)))
7176
+ return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithSocksWaitClient(boolPyToGo(wait)))
7175
7177
 
7176
7178
  }
7177
7179
 
7178
- //export linksocks_LinkSocksServer_Serve
7179
- func linksocks_LinkSocksServer_Serve(_handle CGoHandle, ctx CGoHandle) *C.char {
7180
+ //export linksocks_ServerOption_WithLogger
7181
+ func linksocks_ServerOption_WithLogger(_handle CGoHandle, logger CGoHandle) CGoHandle {
7180
7182
  _saved_thread := C.PyEval_SaveThread()
7181
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
7183
+ defer C.PyEval_RestoreThread(_saved_thread)
7184
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7182
7185
  if __err != nil {
7183
- return errorGoToPy(nil)
7186
+ return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7184
7187
  }
7185
- __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).Serve(ptrFromHandle_context_Context(ctx))
7188
+ return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithLogger(*ptrFromHandle_zerolog_Logger(logger)))
7186
7189
 
7187
- C.PyEval_RestoreThread(_saved_thread)
7190
+ }
7191
+
7192
+ //export linksocks_ServerOption_WithBufferSize
7193
+ func linksocks_ServerOption_WithBufferSize(_handle CGoHandle, size C.longlong) CGoHandle {
7194
+ _saved_thread := C.PyEval_SaveThread()
7195
+ defer C.PyEval_RestoreThread(_saved_thread)
7196
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7188
7197
  if __err != nil {
7189
- estr := C.CString(__err.Error())
7190
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
7191
- return estr
7198
+ return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7192
7199
  }
7193
- return C.CString("")
7200
+ return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithBufferSize(int(size)))
7201
+
7194
7202
  }
7195
7203
 
7196
- //export linksocks_LinkSocksServer_WaitReady
7197
- func linksocks_LinkSocksServer_WaitReady(_handle CGoHandle, ctx CGoHandle, timeout C.longlong) *C.char {
7204
+ //export linksocks_ServerOption_WithAPI
7205
+ func linksocks_ServerOption_WithAPI(_handle CGoHandle, apiKey *C.char) CGoHandle {
7198
7206
  _saved_thread := C.PyEval_SaveThread()
7199
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
7207
+ defer C.PyEval_RestoreThread(_saved_thread)
7208
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7200
7209
  if __err != nil {
7201
- return errorGoToPy(nil)
7210
+ return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7202
7211
  }
7203
- __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).WaitReady(ptrFromHandle_context_Context(ctx), time.Duration(int64(timeout)))
7212
+ return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithAPI(C.GoString(apiKey)))
7204
7213
 
7205
- C.PyEval_RestoreThread(_saved_thread)
7214
+ }
7215
+
7216
+ //export linksocks_ServerOption_WithChannelTimeout
7217
+ func linksocks_ServerOption_WithChannelTimeout(_handle CGoHandle, timeout C.longlong) CGoHandle {
7218
+ _saved_thread := C.PyEval_SaveThread()
7219
+ defer C.PyEval_RestoreThread(_saved_thread)
7220
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7206
7221
  if __err != nil {
7207
- estr := C.CString(__err.Error())
7208
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
7209
- return estr
7222
+ return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7210
7223
  }
7211
- return C.CString("")
7224
+ return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithChannelTimeout(time.Duration(int64(timeout))))
7225
+
7212
7226
  }
7213
7227
 
7214
- //export linksocks_LinkSocksServer_Close
7215
- func linksocks_LinkSocksServer_Close(_handle CGoHandle, goRun C.char) {
7228
+ //export linksocks_ServerOption_WithConnectTimeout
7229
+ func linksocks_ServerOption_WithConnectTimeout(_handle CGoHandle, timeout C.longlong) CGoHandle {
7216
7230
  _saved_thread := C.PyEval_SaveThread()
7217
7231
  defer C.PyEval_RestoreThread(_saved_thread)
7218
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
7232
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7219
7233
  if __err != nil {
7220
- return
7221
- }
7222
- if boolPyToGo(goRun) {
7223
- go gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).Close()
7224
- } else {
7225
- gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).Close()
7234
+ return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7226
7235
  }
7236
+ return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithConnectTimeout(time.Duration(int64(timeout))))
7237
+
7227
7238
  }
7228
7239
 
7229
- //export linksocks_LinkSocksServer_GetClientCount
7230
- func linksocks_LinkSocksServer_GetClientCount(_handle CGoHandle) C.longlong {
7240
+ //export linksocks_ServerOption_WithFastOpen
7241
+ func linksocks_ServerOption_WithFastOpen(_handle CGoHandle, fastOpen C.char) CGoHandle {
7231
7242
  _saved_thread := C.PyEval_SaveThread()
7232
7243
  defer C.PyEval_RestoreThread(_saved_thread)
7233
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
7244
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7234
7245
  if __err != nil {
7235
- return C.longlong(0)
7246
+ return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7236
7247
  }
7237
- return C.longlong(gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).GetClientCount())
7248
+ return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithFastOpen(boolPyToGo(fastOpen)))
7238
7249
 
7239
7250
  }
7240
7251
 
7241
- //export linksocks_LinkSocksServer_HasClients
7242
- func linksocks_LinkSocksServer_HasClients(_handle CGoHandle) C.char {
7252
+ //export linksocks_ServerOption_WithUpstreamProxy
7253
+ func linksocks_ServerOption_WithUpstreamProxy(_handle CGoHandle, proxy *C.char) CGoHandle {
7243
7254
  _saved_thread := C.PyEval_SaveThread()
7244
7255
  defer C.PyEval_RestoreThread(_saved_thread)
7245
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
7256
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7246
7257
  if __err != nil {
7247
- return boolGoToPy(false)
7258
+ return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7248
7259
  }
7249
- return boolGoToPy(gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).HasClients())
7260
+ return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithUpstreamProxy(C.GoString(proxy)))
7250
7261
 
7251
7262
  }
7252
7263
 
7253
- //export linksocks_LinkSocksServer_GetTokenClientCount
7254
- func linksocks_LinkSocksServer_GetTokenClientCount(_handle CGoHandle, token *C.char) C.longlong {
7264
+ //export linksocks_ServerOption_WithUpstreamAuth
7265
+ func linksocks_ServerOption_WithUpstreamAuth(_handle CGoHandle, username *C.char, password *C.char) CGoHandle {
7255
7266
  _saved_thread := C.PyEval_SaveThread()
7256
7267
  defer C.PyEval_RestoreThread(_saved_thread)
7257
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.LinkSocksServer")
7268
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7258
7269
  if __err != nil {
7259
- return C.longlong(0)
7270
+ return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7260
7271
  }
7261
- return C.longlong(gopyh.Embed(vifc, reflect.TypeOf(linksocks.LinkSocksServer{})).(*linksocks.LinkSocksServer).GetTokenClientCount(C.GoString(token)))
7272
+ return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithUpstreamAuth(C.GoString(username), C.GoString(password)))
7262
7273
 
7263
7274
  }
7264
7275
 
@@ -7343,45 +7354,14 @@ func linksocks_TokenRequest_ReverseToken_Set(handle CGoHandle, val *C.char) {
7343
7354
 
7344
7355
  //export linksocks_TokenRequest_AllowManageConnector_Get
7345
7356
  func linksocks_TokenRequest_AllowManageConnector_Get(handle CGoHandle) C.char {
7346
- op := ptrFromHandle_linksocks_TokenRequest(handle)
7347
- return boolGoToPy(op.AllowManageConnector)
7348
- }
7349
-
7350
- //export linksocks_TokenRequest_AllowManageConnector_Set
7351
- func linksocks_TokenRequest_AllowManageConnector_Set(handle CGoHandle, val C.char) {
7352
- op := ptrFromHandle_linksocks_TokenRequest(handle)
7353
- op.AllowManageConnector = boolPyToGo(val)
7354
- }
7355
-
7356
- // --- wrapping struct: linksocks.ReverseTokenStatus ---
7357
- //
7358
- //export linksocks_ReverseTokenStatus_CTor
7359
- func linksocks_ReverseTokenStatus_CTor() CGoHandle {
7360
- return CGoHandle(handleFromPtr_linksocks_ReverseTokenStatus(&linksocks.ReverseTokenStatus{}))
7361
- }
7362
-
7363
- //export linksocks_ReverseTokenStatus_Port_Get
7364
- func linksocks_ReverseTokenStatus_Port_Get(handle CGoHandle) C.longlong {
7365
- op := ptrFromHandle_linksocks_ReverseTokenStatus(handle)
7366
- return C.longlong(op.Port)
7367
- }
7368
-
7369
- //export linksocks_ReverseTokenStatus_Port_Set
7370
- func linksocks_ReverseTokenStatus_Port_Set(handle CGoHandle, val C.longlong) {
7371
- op := ptrFromHandle_linksocks_ReverseTokenStatus(handle)
7372
- op.Port = int(val)
7373
- }
7374
-
7375
- //export linksocks_ReverseTokenStatus_ConnectorTokens_Get
7376
- func linksocks_ReverseTokenStatus_ConnectorTokens_Get(handle CGoHandle) CGoHandle {
7377
- op := ptrFromHandle_linksocks_ReverseTokenStatus(handle)
7378
- return handleFromPtr_Slice_string(&op.ConnectorTokens)
7357
+ op := ptrFromHandle_linksocks_TokenRequest(handle)
7358
+ return boolGoToPy(op.AllowManageConnector)
7379
7359
  }
7380
7360
 
7381
- //export linksocks_ReverseTokenStatus_ConnectorTokens_Set
7382
- func linksocks_ReverseTokenStatus_ConnectorTokens_Set(handle CGoHandle, val CGoHandle) {
7383
- op := ptrFromHandle_linksocks_ReverseTokenStatus(handle)
7384
- op.ConnectorTokens = deptrFromHandle_Slice_string(val)
7361
+ //export linksocks_TokenRequest_AllowManageConnector_Set
7362
+ func linksocks_TokenRequest_AllowManageConnector_Set(handle CGoHandle, val C.char) {
7363
+ op := ptrFromHandle_linksocks_TokenRequest(handle)
7364
+ op.AllowManageConnector = boolPyToGo(val)
7385
7365
  }
7386
7366
 
7387
7367
  // --- wrapping struct: linksocks.WSConn ---
@@ -7521,6 +7501,37 @@ func linksocks_WSConn_Close(_handle CGoHandle) *C.char {
7521
7501
  return C.CString("")
7522
7502
  }
7523
7503
 
7504
+ // --- wrapping struct: linksocks.StatusResponse ---
7505
+ //
7506
+ //export linksocks_StatusResponse_CTor
7507
+ func linksocks_StatusResponse_CTor() CGoHandle {
7508
+ return CGoHandle(handleFromPtr_linksocks_StatusResponse(&linksocks.StatusResponse{}))
7509
+ }
7510
+
7511
+ //export linksocks_StatusResponse_Version_Get
7512
+ func linksocks_StatusResponse_Version_Get(handle CGoHandle) *C.char {
7513
+ op := ptrFromHandle_linksocks_StatusResponse(handle)
7514
+ return C.CString(op.Version)
7515
+ }
7516
+
7517
+ //export linksocks_StatusResponse_Version_Set
7518
+ func linksocks_StatusResponse_Version_Set(handle CGoHandle, val *C.char) {
7519
+ op := ptrFromHandle_linksocks_StatusResponse(handle)
7520
+ op.Version = C.GoString(val)
7521
+ }
7522
+
7523
+ //export linksocks_StatusResponse_Tokens_Get
7524
+ func linksocks_StatusResponse_Tokens_Get(handle CGoHandle) CGoHandle {
7525
+ op := ptrFromHandle_linksocks_StatusResponse(handle)
7526
+ return handleFromPtr_Slice_interface_(&op.Tokens)
7527
+ }
7528
+
7529
+ //export linksocks_StatusResponse_Tokens_Set
7530
+ func linksocks_StatusResponse_Tokens_Set(handle CGoHandle, val CGoHandle) {
7531
+ op := ptrFromHandle_linksocks_StatusResponse(handle)
7532
+ op.Tokens = deptrFromHandle_Slice_interface_(val)
7533
+ }
7534
+
7524
7535
  // --- wrapping struct: linksocks.APIHandler ---
7525
7536
  //
7526
7537
  //export linksocks_APIHandler_CTor
@@ -7543,530 +7554,519 @@ func linksocks_APIHandler_RegisterHandlers(_handle CGoHandle, mux CGoHandle, goR
7543
7554
  }
7544
7555
  }
7545
7556
 
7546
- // --- wrapping struct: linksocks.ConnectMessage ---
7557
+ // --- wrapping struct: linksocks.CLI ---
7547
7558
  //
7548
- //export linksocks_ConnectMessage_CTor
7549
- func linksocks_ConnectMessage_CTor() CGoHandle {
7550
- return CGoHandle(handleFromPtr_linksocks_ConnectMessage(&linksocks.ConnectMessage{}))
7551
- }
7552
-
7553
- //export linksocks_ConnectMessage_Protocol_Get
7554
- func linksocks_ConnectMessage_Protocol_Get(handle CGoHandle) *C.char {
7555
- op := ptrFromHandle_linksocks_ConnectMessage(handle)
7556
- return C.CString(op.Protocol)
7557
- }
7558
-
7559
- //export linksocks_ConnectMessage_Protocol_Set
7560
- func linksocks_ConnectMessage_Protocol_Set(handle CGoHandle, val *C.char) {
7561
- op := ptrFromHandle_linksocks_ConnectMessage(handle)
7562
- op.Protocol = C.GoString(val)
7563
- }
7564
-
7565
- //export linksocks_ConnectMessage_Address_Get
7566
- func linksocks_ConnectMessage_Address_Get(handle CGoHandle) *C.char {
7567
- op := ptrFromHandle_linksocks_ConnectMessage(handle)
7568
- return C.CString(op.Address)
7569
- }
7570
-
7571
- //export linksocks_ConnectMessage_Address_Set
7572
- func linksocks_ConnectMessage_Address_Set(handle CGoHandle, val *C.char) {
7573
- op := ptrFromHandle_linksocks_ConnectMessage(handle)
7574
- op.Address = C.GoString(val)
7575
- }
7576
-
7577
- //export linksocks_ConnectMessage_Port_Get
7578
- func linksocks_ConnectMessage_Port_Get(handle CGoHandle) C.longlong {
7579
- op := ptrFromHandle_linksocks_ConnectMessage(handle)
7580
- return C.longlong(op.Port)
7581
- }
7582
-
7583
- //export linksocks_ConnectMessage_Port_Set
7584
- func linksocks_ConnectMessage_Port_Set(handle CGoHandle, val C.longlong) {
7585
- op := ptrFromHandle_linksocks_ConnectMessage(handle)
7586
- op.Port = int(val)
7587
- }
7588
-
7589
- //export linksocks_ConnectMessage_ChannelID_Get
7590
- func linksocks_ConnectMessage_ChannelID_Get(handle CGoHandle) CGoHandle {
7591
- op := ptrFromHandle_linksocks_ConnectMessage(handle)
7592
- return handleFromPtr_uuid_UUID(&op.ChannelID)
7559
+ //export linksocks_CLI_CTor
7560
+ func linksocks_CLI_CTor() CGoHandle {
7561
+ return CGoHandle(handleFromPtr_linksocks_CLI(&linksocks.CLI{}))
7593
7562
  }
7594
7563
 
7595
- //export linksocks_ConnectMessage_GetType
7596
- func linksocks_ConnectMessage_GetType(_handle CGoHandle) *C.char {
7564
+ //export linksocks_CLI_Execute
7565
+ func linksocks_CLI_Execute(_handle CGoHandle) *C.char {
7597
7566
  _saved_thread := C.PyEval_SaveThread()
7598
- defer C.PyEval_RestoreThread(_saved_thread)
7599
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ConnectMessage")
7567
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.CLI")
7600
7568
  if __err != nil {
7601
- return C.CString("")
7569
+ return errorGoToPy(nil)
7602
7570
  }
7603
- return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ConnectMessage{})).(*linksocks.ConnectMessage).GetType())
7571
+ __err = gopyh.Embed(vifc, reflect.TypeOf(linksocks.CLI{})).(*linksocks.CLI).Execute()
7604
7572
 
7573
+ C.PyEval_RestoreThread(_saved_thread)
7574
+ if __err != nil {
7575
+ estr := C.CString(__err.Error())
7576
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
7577
+ return estr
7578
+ }
7579
+ return C.CString("")
7605
7580
  }
7606
7581
 
7607
- // --- wrapping struct: linksocks.ServerOption ---
7582
+ // --- wrapping struct: linksocks.ConnectorResponseMessage ---
7608
7583
  //
7609
- //export linksocks_ServerOption_CTor
7610
- func linksocks_ServerOption_CTor() CGoHandle {
7611
- return CGoHandle(handleFromPtr_linksocks_ServerOption(&linksocks.ServerOption{}))
7612
- }
7613
-
7614
- //export linksocks_ServerOption_WSHost_Get
7615
- func linksocks_ServerOption_WSHost_Get(handle CGoHandle) *C.char {
7616
- op := ptrFromHandle_linksocks_ServerOption(handle)
7617
- return C.CString(op.WSHost)
7618
- }
7619
-
7620
- //export linksocks_ServerOption_WSHost_Set
7621
- func linksocks_ServerOption_WSHost_Set(handle CGoHandle, val *C.char) {
7622
- op := ptrFromHandle_linksocks_ServerOption(handle)
7623
- op.WSHost = C.GoString(val)
7624
- }
7625
-
7626
- //export linksocks_ServerOption_WSPort_Get
7627
- func linksocks_ServerOption_WSPort_Get(handle CGoHandle) C.longlong {
7628
- op := ptrFromHandle_linksocks_ServerOption(handle)
7629
- return C.longlong(op.WSPort)
7630
- }
7631
-
7632
- //export linksocks_ServerOption_WSPort_Set
7633
- func linksocks_ServerOption_WSPort_Set(handle CGoHandle, val C.longlong) {
7634
- op := ptrFromHandle_linksocks_ServerOption(handle)
7635
- op.WSPort = int(val)
7636
- }
7637
-
7638
- //export linksocks_ServerOption_SocksHost_Get
7639
- func linksocks_ServerOption_SocksHost_Get(handle CGoHandle) *C.char {
7640
- op := ptrFromHandle_linksocks_ServerOption(handle)
7641
- return C.CString(op.SocksHost)
7642
- }
7643
-
7644
- //export linksocks_ServerOption_SocksHost_Set
7645
- func linksocks_ServerOption_SocksHost_Set(handle CGoHandle, val *C.char) {
7646
- op := ptrFromHandle_linksocks_ServerOption(handle)
7647
- op.SocksHost = C.GoString(val)
7648
- }
7649
-
7650
- //export linksocks_ServerOption_PortPool_Get
7651
- func linksocks_ServerOption_PortPool_Get(handle CGoHandle) CGoHandle {
7652
- op := ptrFromHandle_linksocks_ServerOption(handle)
7653
- return handleFromPtr_Ptr_linksocks_PortPool(op.PortPool)
7654
- }
7655
-
7656
- //export linksocks_ServerOption_PortPool_Set
7657
- func linksocks_ServerOption_PortPool_Set(handle CGoHandle, val CGoHandle) {
7658
- op := ptrFromHandle_linksocks_ServerOption(handle)
7659
- op.PortPool = ptrFromHandle_Ptr_linksocks_PortPool(val)
7660
- }
7661
-
7662
- //export linksocks_ServerOption_SocksWaitClient_Get
7663
- func linksocks_ServerOption_SocksWaitClient_Get(handle CGoHandle) C.char {
7664
- op := ptrFromHandle_linksocks_ServerOption(handle)
7665
- return boolGoToPy(op.SocksWaitClient)
7666
- }
7667
-
7668
- //export linksocks_ServerOption_SocksWaitClient_Set
7669
- func linksocks_ServerOption_SocksWaitClient_Set(handle CGoHandle, val C.char) {
7670
- op := ptrFromHandle_linksocks_ServerOption(handle)
7671
- op.SocksWaitClient = boolPyToGo(val)
7672
- }
7673
-
7674
- //export linksocks_ServerOption_Logger_Get
7675
- func linksocks_ServerOption_Logger_Get(handle CGoHandle) CGoHandle {
7676
- op := ptrFromHandle_linksocks_ServerOption(handle)
7677
- return handleFromPtr_zerolog_Logger(&op.Logger)
7678
- }
7679
-
7680
- //export linksocks_ServerOption_Logger_Set
7681
- func linksocks_ServerOption_Logger_Set(handle CGoHandle, val CGoHandle) {
7682
- op := ptrFromHandle_linksocks_ServerOption(handle)
7683
- op.Logger = *ptrFromHandle_zerolog_Logger(val)
7684
- }
7685
-
7686
- //export linksocks_ServerOption_BufferSize_Get
7687
- func linksocks_ServerOption_BufferSize_Get(handle CGoHandle) C.longlong {
7688
- op := ptrFromHandle_linksocks_ServerOption(handle)
7689
- return C.longlong(op.BufferSize)
7690
- }
7691
-
7692
- //export linksocks_ServerOption_BufferSize_Set
7693
- func linksocks_ServerOption_BufferSize_Set(handle CGoHandle, val C.longlong) {
7694
- op := ptrFromHandle_linksocks_ServerOption(handle)
7695
- op.BufferSize = int(val)
7696
- }
7697
-
7698
- //export linksocks_ServerOption_APIKey_Get
7699
- func linksocks_ServerOption_APIKey_Get(handle CGoHandle) *C.char {
7700
- op := ptrFromHandle_linksocks_ServerOption(handle)
7701
- return C.CString(op.APIKey)
7702
- }
7703
-
7704
- //export linksocks_ServerOption_APIKey_Set
7705
- func linksocks_ServerOption_APIKey_Set(handle CGoHandle, val *C.char) {
7706
- op := ptrFromHandle_linksocks_ServerOption(handle)
7707
- op.APIKey = C.GoString(val)
7708
- }
7709
-
7710
- //export linksocks_ServerOption_ChannelTimeout_Get
7711
- func linksocks_ServerOption_ChannelTimeout_Get(handle CGoHandle) C.longlong {
7712
- op := ptrFromHandle_linksocks_ServerOption(handle)
7713
- return C.longlong(int64(op.ChannelTimeout))
7714
- }
7715
-
7716
- //export linksocks_ServerOption_ChannelTimeout_Set
7717
- func linksocks_ServerOption_ChannelTimeout_Set(handle CGoHandle, val C.longlong) {
7718
- op := ptrFromHandle_linksocks_ServerOption(handle)
7719
- op.ChannelTimeout = time.Duration(int64(val))
7720
- }
7721
-
7722
- //export linksocks_ServerOption_ConnectTimeout_Get
7723
- func linksocks_ServerOption_ConnectTimeout_Get(handle CGoHandle) C.longlong {
7724
- op := ptrFromHandle_linksocks_ServerOption(handle)
7725
- return C.longlong(int64(op.ConnectTimeout))
7726
- }
7727
-
7728
- //export linksocks_ServerOption_ConnectTimeout_Set
7729
- func linksocks_ServerOption_ConnectTimeout_Set(handle CGoHandle, val C.longlong) {
7730
- op := ptrFromHandle_linksocks_ServerOption(handle)
7731
- op.ConnectTimeout = time.Duration(int64(val))
7732
- }
7733
-
7734
- //export linksocks_ServerOption_FastOpen_Get
7735
- func linksocks_ServerOption_FastOpen_Get(handle CGoHandle) C.char {
7736
- op := ptrFromHandle_linksocks_ServerOption(handle)
7737
- return boolGoToPy(op.FastOpen)
7738
- }
7739
-
7740
- //export linksocks_ServerOption_FastOpen_Set
7741
- func linksocks_ServerOption_FastOpen_Set(handle CGoHandle, val C.char) {
7742
- op := ptrFromHandle_linksocks_ServerOption(handle)
7743
- op.FastOpen = boolPyToGo(val)
7584
+ //export linksocks_ConnectorResponseMessage_CTor
7585
+ func linksocks_ConnectorResponseMessage_CTor() CGoHandle {
7586
+ return CGoHandle(handleFromPtr_linksocks_ConnectorResponseMessage(&linksocks.ConnectorResponseMessage{}))
7744
7587
  }
7745
7588
 
7746
- //export linksocks_ServerOption_UpstreamProxy_Get
7747
- func linksocks_ServerOption_UpstreamProxy_Get(handle CGoHandle) *C.char {
7748
- op := ptrFromHandle_linksocks_ServerOption(handle)
7749
- return C.CString(op.UpstreamProxy)
7589
+ //export linksocks_ConnectorResponseMessage_Success_Get
7590
+ func linksocks_ConnectorResponseMessage_Success_Get(handle CGoHandle) C.char {
7591
+ op := ptrFromHandle_linksocks_ConnectorResponseMessage(handle)
7592
+ return boolGoToPy(op.Success)
7750
7593
  }
7751
7594
 
7752
- //export linksocks_ServerOption_UpstreamProxy_Set
7753
- func linksocks_ServerOption_UpstreamProxy_Set(handle CGoHandle, val *C.char) {
7754
- op := ptrFromHandle_linksocks_ServerOption(handle)
7755
- op.UpstreamProxy = C.GoString(val)
7595
+ //export linksocks_ConnectorResponseMessage_Success_Set
7596
+ func linksocks_ConnectorResponseMessage_Success_Set(handle CGoHandle, val C.char) {
7597
+ op := ptrFromHandle_linksocks_ConnectorResponseMessage(handle)
7598
+ op.Success = boolPyToGo(val)
7756
7599
  }
7757
7600
 
7758
- //export linksocks_ServerOption_UpstreamUsername_Get
7759
- func linksocks_ServerOption_UpstreamUsername_Get(handle CGoHandle) *C.char {
7760
- op := ptrFromHandle_linksocks_ServerOption(handle)
7761
- return C.CString(op.UpstreamUsername)
7601
+ //export linksocks_ConnectorResponseMessage_Error_Get
7602
+ func linksocks_ConnectorResponseMessage_Error_Get(handle CGoHandle) *C.char {
7603
+ op := ptrFromHandle_linksocks_ConnectorResponseMessage(handle)
7604
+ return C.CString(op.Error)
7762
7605
  }
7763
7606
 
7764
- //export linksocks_ServerOption_UpstreamUsername_Set
7765
- func linksocks_ServerOption_UpstreamUsername_Set(handle CGoHandle, val *C.char) {
7766
- op := ptrFromHandle_linksocks_ServerOption(handle)
7767
- op.UpstreamUsername = C.GoString(val)
7607
+ //export linksocks_ConnectorResponseMessage_Error_Set
7608
+ func linksocks_ConnectorResponseMessage_Error_Set(handle CGoHandle, val *C.char) {
7609
+ op := ptrFromHandle_linksocks_ConnectorResponseMessage(handle)
7610
+ op.Error = C.GoString(val)
7768
7611
  }
7769
7612
 
7770
- //export linksocks_ServerOption_UpstreamPassword_Get
7771
- func linksocks_ServerOption_UpstreamPassword_Get(handle CGoHandle) *C.char {
7772
- op := ptrFromHandle_linksocks_ServerOption(handle)
7773
- return C.CString(op.UpstreamPassword)
7613
+ //export linksocks_ConnectorResponseMessage_ChannelID_Get
7614
+ func linksocks_ConnectorResponseMessage_ChannelID_Get(handle CGoHandle) CGoHandle {
7615
+ op := ptrFromHandle_linksocks_ConnectorResponseMessage(handle)
7616
+ return handleFromPtr_uuid_UUID(&op.ChannelID)
7774
7617
  }
7775
7618
 
7776
- //export linksocks_ServerOption_UpstreamPassword_Set
7777
- func linksocks_ServerOption_UpstreamPassword_Set(handle CGoHandle, val *C.char) {
7778
- op := ptrFromHandle_linksocks_ServerOption(handle)
7779
- op.UpstreamPassword = C.GoString(val)
7619
+ //export linksocks_ConnectorResponseMessage_ConnectorToken_Get
7620
+ func linksocks_ConnectorResponseMessage_ConnectorToken_Get(handle CGoHandle) *C.char {
7621
+ op := ptrFromHandle_linksocks_ConnectorResponseMessage(handle)
7622
+ return C.CString(op.ConnectorToken)
7780
7623
  }
7781
7624
 
7782
- //export linksocks_ServerOption_WithWSHost
7783
- func linksocks_ServerOption_WithWSHost(_handle CGoHandle, host *C.char) CGoHandle {
7625
+ //export linksocks_ConnectorResponseMessage_ConnectorToken_Set
7626
+ func linksocks_ConnectorResponseMessage_ConnectorToken_Set(handle CGoHandle, val *C.char) {
7627
+ op := ptrFromHandle_linksocks_ConnectorResponseMessage(handle)
7628
+ op.ConnectorToken = C.GoString(val)
7629
+ }
7630
+
7631
+ //export linksocks_ConnectorResponseMessage_GetType
7632
+ func linksocks_ConnectorResponseMessage_GetType(_handle CGoHandle) *C.char {
7784
7633
  _saved_thread := C.PyEval_SaveThread()
7785
7634
  defer C.PyEval_RestoreThread(_saved_thread)
7786
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7635
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ConnectorResponseMessage")
7787
7636
  if __err != nil {
7788
- return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7637
+ return C.CString("")
7789
7638
  }
7790
- return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithWSHost(C.GoString(host)))
7639
+ return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ConnectorResponseMessage{})).(*linksocks.ConnectorResponseMessage).GetType())
7791
7640
 
7792
7641
  }
7793
7642
 
7794
- //export linksocks_ServerOption_WithWSPort
7795
- func linksocks_ServerOption_WithWSPort(_handle CGoHandle, port C.longlong) CGoHandle {
7643
+ // --- wrapping struct: linksocks.ContextWithCancel ---
7644
+ //
7645
+ //export linksocks_ContextWithCancel_CTor
7646
+ func linksocks_ContextWithCancel_CTor() CGoHandle {
7647
+ return CGoHandle(handleFromPtr_linksocks_ContextWithCancel(&linksocks.ContextWithCancel{}))
7648
+ }
7649
+
7650
+ //export linksocks_ContextWithCancel_Cancel
7651
+ func linksocks_ContextWithCancel_Cancel(_handle CGoHandle, goRun C.char) {
7796
7652
  _saved_thread := C.PyEval_SaveThread()
7797
7653
  defer C.PyEval_RestoreThread(_saved_thread)
7798
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7654
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ContextWithCancel")
7799
7655
  if __err != nil {
7800
- return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7656
+ return
7657
+ }
7658
+ if boolPyToGo(goRun) {
7659
+ go gopyh.Embed(vifc, reflect.TypeOf(linksocks.ContextWithCancel{})).(*linksocks.ContextWithCancel).Cancel()
7660
+ } else {
7661
+ gopyh.Embed(vifc, reflect.TypeOf(linksocks.ContextWithCancel{})).(*linksocks.ContextWithCancel).Cancel()
7801
7662
  }
7802
- return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithWSPort(int(port)))
7803
-
7804
7663
  }
7805
7664
 
7806
- //export linksocks_ServerOption_WithSocksHost
7807
- func linksocks_ServerOption_WithSocksHost(_handle CGoHandle, host *C.char) CGoHandle {
7665
+ //export linksocks_ContextWithCancel_Context
7666
+ func linksocks_ContextWithCancel_Context(_handle CGoHandle) CGoHandle {
7808
7667
  _saved_thread := C.PyEval_SaveThread()
7809
7668
  defer C.PyEval_RestoreThread(_saved_thread)
7810
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7669
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ContextWithCancel")
7811
7670
  if __err != nil {
7812
- return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7671
+ return handleFromPtr_context_Context(nil)
7813
7672
  }
7814
- return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithSocksHost(C.GoString(host)))
7673
+ return handleFromPtr_context_Context(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ContextWithCancel{})).(*linksocks.ContextWithCancel).Context())
7815
7674
 
7816
7675
  }
7817
7676
 
7818
- //export linksocks_ServerOption_WithPortPool
7819
- func linksocks_ServerOption_WithPortPool(_handle CGoHandle, pool CGoHandle) CGoHandle {
7677
+ // --- wrapping struct: linksocks.PortPool ---
7678
+ //
7679
+ //export linksocks_PortPool_CTor
7680
+ func linksocks_PortPool_CTor() CGoHandle {
7681
+ return CGoHandle(handleFromPtr_linksocks_PortPool(&linksocks.PortPool{}))
7682
+ }
7683
+
7684
+ //export linksocks_PortPool_Get
7685
+ func linksocks_PortPool_Get(_handle CGoHandle, requestedPort C.longlong) C.longlong {
7820
7686
  _saved_thread := C.PyEval_SaveThread()
7821
7687
  defer C.PyEval_RestoreThread(_saved_thread)
7822
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7688
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.PortPool")
7823
7689
  if __err != nil {
7824
- return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7690
+ return C.longlong(0)
7825
7691
  }
7826
- return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithPortPool(ptrFromHandle_Ptr_linksocks_PortPool(pool)))
7692
+ return C.longlong(gopyh.Embed(vifc, reflect.TypeOf(linksocks.PortPool{})).(*linksocks.PortPool).Get(int(requestedPort)))
7827
7693
 
7828
7694
  }
7829
7695
 
7830
- //export linksocks_ServerOption_WithSocksWaitClient
7831
- func linksocks_ServerOption_WithSocksWaitClient(_handle CGoHandle, wait C.char) CGoHandle {
7696
+ //export linksocks_PortPool_Put
7697
+ func linksocks_PortPool_Put(_handle CGoHandle, port C.longlong, goRun C.char) {
7832
7698
  _saved_thread := C.PyEval_SaveThread()
7833
7699
  defer C.PyEval_RestoreThread(_saved_thread)
7834
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7700
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.PortPool")
7835
7701
  if __err != nil {
7836
- return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7702
+ return
7837
7703
  }
7838
- return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithSocksWaitClient(boolPyToGo(wait)))
7704
+ if boolPyToGo(goRun) {
7705
+ go gopyh.Embed(vifc, reflect.TypeOf(linksocks.PortPool{})).(*linksocks.PortPool).Put(int(port))
7706
+ } else {
7707
+ gopyh.Embed(vifc, reflect.TypeOf(linksocks.PortPool{})).(*linksocks.PortPool).Put(int(port))
7708
+ }
7709
+ }
7839
7710
 
7711
+ // --- wrapping struct: linksocks.ReverseTokenResult ---
7712
+ //
7713
+ //export linksocks_ReverseTokenResult_CTor
7714
+ func linksocks_ReverseTokenResult_CTor() CGoHandle {
7715
+ return CGoHandle(handleFromPtr_linksocks_ReverseTokenResult(&linksocks.ReverseTokenResult{}))
7840
7716
  }
7841
7717
 
7842
- //export linksocks_ServerOption_WithLogger
7843
- func linksocks_ServerOption_WithLogger(_handle CGoHandle, logger CGoHandle) CGoHandle {
7718
+ //export linksocks_ReverseTokenResult_Token_Get
7719
+ func linksocks_ReverseTokenResult_Token_Get(handle CGoHandle) *C.char {
7720
+ op := ptrFromHandle_linksocks_ReverseTokenResult(handle)
7721
+ return C.CString(op.Token)
7722
+ }
7723
+
7724
+ //export linksocks_ReverseTokenResult_Token_Set
7725
+ func linksocks_ReverseTokenResult_Token_Set(handle CGoHandle, val *C.char) {
7726
+ op := ptrFromHandle_linksocks_ReverseTokenResult(handle)
7727
+ op.Token = C.GoString(val)
7728
+ }
7729
+
7730
+ //export linksocks_ReverseTokenResult_Port_Get
7731
+ func linksocks_ReverseTokenResult_Port_Get(handle CGoHandle) C.longlong {
7732
+ op := ptrFromHandle_linksocks_ReverseTokenResult(handle)
7733
+ return C.longlong(op.Port)
7734
+ }
7735
+
7736
+ //export linksocks_ReverseTokenResult_Port_Set
7737
+ func linksocks_ReverseTokenResult_Port_Set(handle CGoHandle, val C.longlong) {
7738
+ op := ptrFromHandle_linksocks_ReverseTokenResult(handle)
7739
+ op.Port = int(val)
7740
+ }
7741
+
7742
+ // --- wrapping struct: linksocks.SocketManager ---
7743
+ //
7744
+ //export linksocks_SocketManager_CTor
7745
+ func linksocks_SocketManager_CTor() CGoHandle {
7746
+ return CGoHandle(handleFromPtr_linksocks_SocketManager(&linksocks.SocketManager{}))
7747
+ }
7748
+
7749
+ //export linksocks_SocketManager_GetListener
7750
+ func linksocks_SocketManager_GetListener(_handle CGoHandle, port C.longlong) CGoHandle {
7844
7751
  _saved_thread := C.PyEval_SaveThread()
7845
- defer C.PyEval_RestoreThread(_saved_thread)
7846
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7752
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.SocketManager")
7847
7753
  if __err != nil {
7848
- return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7754
+ return handleFromPtr_net_Listener(nil)
7849
7755
  }
7850
- return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithLogger(*ptrFromHandle_zerolog_Logger(logger)))
7756
+ cret, __err := gopyh.Embed(vifc, reflect.TypeOf(linksocks.SocketManager{})).(*linksocks.SocketManager).GetListener(int(port))
7851
7757
 
7758
+ C.PyEval_RestoreThread(_saved_thread)
7759
+ if __err != nil {
7760
+ estr := C.CString(__err.Error())
7761
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
7762
+ C.free(unsafe.Pointer(estr))
7763
+ return handleFromPtr_net_Listener(nil)
7764
+ }
7765
+ return handleFromPtr_net_Listener(cret)
7852
7766
  }
7853
7767
 
7854
- //export linksocks_ServerOption_WithBufferSize
7855
- func linksocks_ServerOption_WithBufferSize(_handle CGoHandle, size C.longlong) CGoHandle {
7768
+ //export linksocks_SocketManager_ReleaseListener
7769
+ func linksocks_SocketManager_ReleaseListener(_handle CGoHandle, port C.longlong, goRun C.char) {
7856
7770
  _saved_thread := C.PyEval_SaveThread()
7857
7771
  defer C.PyEval_RestoreThread(_saved_thread)
7858
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7772
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.SocketManager")
7859
7773
  if __err != nil {
7860
- return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7774
+ return
7775
+ }
7776
+ if boolPyToGo(goRun) {
7777
+ go gopyh.Embed(vifc, reflect.TypeOf(linksocks.SocketManager{})).(*linksocks.SocketManager).ReleaseListener(int(port))
7778
+ } else {
7779
+ gopyh.Embed(vifc, reflect.TypeOf(linksocks.SocketManager{})).(*linksocks.SocketManager).ReleaseListener(int(port))
7861
7780
  }
7862
- return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithBufferSize(int(size)))
7863
-
7864
7781
  }
7865
7782
 
7866
- //export linksocks_ServerOption_WithAPI
7867
- func linksocks_ServerOption_WithAPI(_handle CGoHandle, apiKey *C.char) CGoHandle {
7783
+ //export linksocks_SocketManager_Close
7784
+ func linksocks_SocketManager_Close(_handle CGoHandle, goRun C.char) {
7868
7785
  _saved_thread := C.PyEval_SaveThread()
7869
7786
  defer C.PyEval_RestoreThread(_saved_thread)
7870
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7787
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.SocketManager")
7871
7788
  if __err != nil {
7872
- return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7789
+ return
7873
7790
  }
7874
- return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithAPI(C.GoString(apiKey)))
7791
+ if boolPyToGo(goRun) {
7792
+ go gopyh.Embed(vifc, reflect.TypeOf(linksocks.SocketManager{})).(*linksocks.SocketManager).Close()
7793
+ } else {
7794
+ gopyh.Embed(vifc, reflect.TypeOf(linksocks.SocketManager{})).(*linksocks.SocketManager).Close()
7795
+ }
7796
+ }
7797
+
7798
+ // --- wrapping struct: linksocks.DataMessage ---
7799
+ //
7800
+ //export linksocks_DataMessage_CTor
7801
+ func linksocks_DataMessage_CTor() CGoHandle {
7802
+ return CGoHandle(handleFromPtr_linksocks_DataMessage(&linksocks.DataMessage{}))
7803
+ }
7804
+
7805
+ //export linksocks_DataMessage_Protocol_Get
7806
+ func linksocks_DataMessage_Protocol_Get(handle CGoHandle) *C.char {
7807
+ op := ptrFromHandle_linksocks_DataMessage(handle)
7808
+ return C.CString(op.Protocol)
7809
+ }
7810
+
7811
+ //export linksocks_DataMessage_Protocol_Set
7812
+ func linksocks_DataMessage_Protocol_Set(handle CGoHandle, val *C.char) {
7813
+ op := ptrFromHandle_linksocks_DataMessage(handle)
7814
+ op.Protocol = C.GoString(val)
7815
+ }
7816
+
7817
+ //export linksocks_DataMessage_ChannelID_Get
7818
+ func linksocks_DataMessage_ChannelID_Get(handle CGoHandle) CGoHandle {
7819
+ op := ptrFromHandle_linksocks_DataMessage(handle)
7820
+ return handleFromPtr_uuid_UUID(&op.ChannelID)
7821
+ }
7822
+
7823
+ //export linksocks_DataMessage_Data_Get
7824
+ func linksocks_DataMessage_Data_Get(handle CGoHandle) CGoHandle {
7825
+ op := ptrFromHandle_linksocks_DataMessage(handle)
7826
+ return handleFromPtr_Slice_byte(&op.Data)
7827
+ }
7828
+
7829
+ //export linksocks_DataMessage_Data_Set
7830
+ func linksocks_DataMessage_Data_Set(handle CGoHandle, val CGoHandle) {
7831
+ op := ptrFromHandle_linksocks_DataMessage(handle)
7832
+ op.Data = deptrFromHandle_Slice_byte(val)
7833
+ }
7834
+
7835
+ //export linksocks_DataMessage_Compression_Get
7836
+ func linksocks_DataMessage_Compression_Get(handle CGoHandle) C.char {
7837
+ op := ptrFromHandle_linksocks_DataMessage(handle)
7838
+ return C.char(op.Compression)
7839
+ }
7840
+
7841
+ //export linksocks_DataMessage_Compression_Set
7842
+ func linksocks_DataMessage_Compression_Set(handle CGoHandle, val C.char) {
7843
+ op := ptrFromHandle_linksocks_DataMessage(handle)
7844
+ op.Compression = byte(val)
7845
+ }
7846
+
7847
+ //export linksocks_DataMessage_Address_Get
7848
+ func linksocks_DataMessage_Address_Get(handle CGoHandle) *C.char {
7849
+ op := ptrFromHandle_linksocks_DataMessage(handle)
7850
+ return C.CString(op.Address)
7851
+ }
7875
7852
 
7853
+ //export linksocks_DataMessage_Address_Set
7854
+ func linksocks_DataMessage_Address_Set(handle CGoHandle, val *C.char) {
7855
+ op := ptrFromHandle_linksocks_DataMessage(handle)
7856
+ op.Address = C.GoString(val)
7876
7857
  }
7877
7858
 
7878
- //export linksocks_ServerOption_WithChannelTimeout
7879
- func linksocks_ServerOption_WithChannelTimeout(_handle CGoHandle, timeout C.longlong) CGoHandle {
7880
- _saved_thread := C.PyEval_SaveThread()
7881
- defer C.PyEval_RestoreThread(_saved_thread)
7882
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7883
- if __err != nil {
7884
- return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7885
- }
7886
- return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithChannelTimeout(time.Duration(int64(timeout))))
7859
+ //export linksocks_DataMessage_Port_Get
7860
+ func linksocks_DataMessage_Port_Get(handle CGoHandle) C.longlong {
7861
+ op := ptrFromHandle_linksocks_DataMessage(handle)
7862
+ return C.longlong(op.Port)
7863
+ }
7887
7864
 
7865
+ //export linksocks_DataMessage_Port_Set
7866
+ func linksocks_DataMessage_Port_Set(handle CGoHandle, val C.longlong) {
7867
+ op := ptrFromHandle_linksocks_DataMessage(handle)
7868
+ op.Port = int(val)
7888
7869
  }
7889
7870
 
7890
- //export linksocks_ServerOption_WithConnectTimeout
7891
- func linksocks_ServerOption_WithConnectTimeout(_handle CGoHandle, timeout C.longlong) CGoHandle {
7892
- _saved_thread := C.PyEval_SaveThread()
7893
- defer C.PyEval_RestoreThread(_saved_thread)
7894
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7895
- if __err != nil {
7896
- return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7897
- }
7898
- return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithConnectTimeout(time.Duration(int64(timeout))))
7871
+ //export linksocks_DataMessage_TargetAddr_Get
7872
+ func linksocks_DataMessage_TargetAddr_Get(handle CGoHandle) *C.char {
7873
+ op := ptrFromHandle_linksocks_DataMessage(handle)
7874
+ return C.CString(op.TargetAddr)
7875
+ }
7899
7876
 
7877
+ //export linksocks_DataMessage_TargetAddr_Set
7878
+ func linksocks_DataMessage_TargetAddr_Set(handle CGoHandle, val *C.char) {
7879
+ op := ptrFromHandle_linksocks_DataMessage(handle)
7880
+ op.TargetAddr = C.GoString(val)
7900
7881
  }
7901
7882
 
7902
- //export linksocks_ServerOption_WithFastOpen
7903
- func linksocks_ServerOption_WithFastOpen(_handle CGoHandle, fastOpen C.char) CGoHandle {
7904
- _saved_thread := C.PyEval_SaveThread()
7905
- defer C.PyEval_RestoreThread(_saved_thread)
7906
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7907
- if __err != nil {
7908
- return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7909
- }
7910
- return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithFastOpen(boolPyToGo(fastOpen)))
7883
+ //export linksocks_DataMessage_TargetPort_Get
7884
+ func linksocks_DataMessage_TargetPort_Get(handle CGoHandle) C.longlong {
7885
+ op := ptrFromHandle_linksocks_DataMessage(handle)
7886
+ return C.longlong(op.TargetPort)
7887
+ }
7911
7888
 
7889
+ //export linksocks_DataMessage_TargetPort_Set
7890
+ func linksocks_DataMessage_TargetPort_Set(handle CGoHandle, val C.longlong) {
7891
+ op := ptrFromHandle_linksocks_DataMessage(handle)
7892
+ op.TargetPort = int(val)
7912
7893
  }
7913
7894
 
7914
- //export linksocks_ServerOption_WithUpstreamProxy
7915
- func linksocks_ServerOption_WithUpstreamProxy(_handle CGoHandle, proxy *C.char) CGoHandle {
7895
+ //export linksocks_DataMessage_GetType
7896
+ func linksocks_DataMessage_GetType(_handle CGoHandle) *C.char {
7916
7897
  _saved_thread := C.PyEval_SaveThread()
7917
7898
  defer C.PyEval_RestoreThread(_saved_thread)
7918
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7899
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.DataMessage")
7919
7900
  if __err != nil {
7920
- return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7901
+ return C.CString("")
7921
7902
  }
7922
- return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithUpstreamProxy(C.GoString(proxy)))
7903
+ return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.DataMessage{})).(*linksocks.DataMessage).GetType())
7923
7904
 
7924
7905
  }
7925
7906
 
7926
- //export linksocks_ServerOption_WithUpstreamAuth
7927
- func linksocks_ServerOption_WithUpstreamAuth(_handle CGoHandle, username *C.char, password *C.char) CGoHandle {
7928
- _saved_thread := C.PyEval_SaveThread()
7929
- defer C.PyEval_RestoreThread(_saved_thread)
7930
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ServerOption")
7931
- if __err != nil {
7932
- return handleFromPtr_Ptr_linksocks_ServerOption(nil)
7933
- }
7934
- return handleFromPtr_Ptr_linksocks_ServerOption(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ServerOption{})).(*linksocks.ServerOption).WithUpstreamAuth(C.GoString(username), C.GoString(password)))
7907
+ // --- wrapping struct: linksocks.LogEntry ---
7908
+ //
7909
+ //export linksocks_LogEntry_CTor
7910
+ func linksocks_LogEntry_CTor() CGoHandle {
7911
+ return CGoHandle(handleFromPtr_linksocks_LogEntry(&linksocks.LogEntry{}))
7912
+ }
7935
7913
 
7914
+ //export linksocks_LogEntry_LoggerID_Get
7915
+ func linksocks_LogEntry_LoggerID_Get(handle CGoHandle) *C.char {
7916
+ op := ptrFromHandle_linksocks_LogEntry(handle)
7917
+ return C.CString(op.LoggerID)
7936
7918
  }
7937
7919
 
7938
- // --- wrapping struct: linksocks.StatusResponse ---
7939
- //
7940
- //export linksocks_StatusResponse_CTor
7941
- func linksocks_StatusResponse_CTor() CGoHandle {
7942
- return CGoHandle(handleFromPtr_linksocks_StatusResponse(&linksocks.StatusResponse{}))
7920
+ //export linksocks_LogEntry_LoggerID_Set
7921
+ func linksocks_LogEntry_LoggerID_Set(handle CGoHandle, val *C.char) {
7922
+ op := ptrFromHandle_linksocks_LogEntry(handle)
7923
+ op.LoggerID = C.GoString(val)
7943
7924
  }
7944
7925
 
7945
- //export linksocks_StatusResponse_Version_Get
7946
- func linksocks_StatusResponse_Version_Get(handle CGoHandle) *C.char {
7947
- op := ptrFromHandle_linksocks_StatusResponse(handle)
7948
- return C.CString(op.Version)
7926
+ //export linksocks_LogEntry_Message_Get
7927
+ func linksocks_LogEntry_Message_Get(handle CGoHandle) *C.char {
7928
+ op := ptrFromHandle_linksocks_LogEntry(handle)
7929
+ return C.CString(op.Message)
7949
7930
  }
7950
7931
 
7951
- //export linksocks_StatusResponse_Version_Set
7952
- func linksocks_StatusResponse_Version_Set(handle CGoHandle, val *C.char) {
7953
- op := ptrFromHandle_linksocks_StatusResponse(handle)
7954
- op.Version = C.GoString(val)
7932
+ //export linksocks_LogEntry_Message_Set
7933
+ func linksocks_LogEntry_Message_Set(handle CGoHandle, val *C.char) {
7934
+ op := ptrFromHandle_linksocks_LogEntry(handle)
7935
+ op.Message = C.GoString(val)
7955
7936
  }
7956
7937
 
7957
- //export linksocks_StatusResponse_Tokens_Get
7958
- func linksocks_StatusResponse_Tokens_Get(handle CGoHandle) CGoHandle {
7959
- op := ptrFromHandle_linksocks_StatusResponse(handle)
7960
- return handleFromPtr_Slice_interface_(&op.Tokens)
7938
+ //export linksocks_LogEntry_Time_Get
7939
+ func linksocks_LogEntry_Time_Get(handle CGoHandle) C.longlong {
7940
+ op := ptrFromHandle_linksocks_LogEntry(handle)
7941
+ return C.longlong(op.Time)
7961
7942
  }
7962
7943
 
7963
- //export linksocks_StatusResponse_Tokens_Set
7964
- func linksocks_StatusResponse_Tokens_Set(handle CGoHandle, val CGoHandle) {
7965
- op := ptrFromHandle_linksocks_StatusResponse(handle)
7966
- op.Tokens = deptrFromHandle_Slice_interface_(val)
7944
+ //export linksocks_LogEntry_Time_Set
7945
+ func linksocks_LogEntry_Time_Set(handle CGoHandle, val C.longlong) {
7946
+ op := ptrFromHandle_linksocks_LogEntry(handle)
7947
+ op.Time = int64(val)
7967
7948
  }
7968
7949
 
7969
- // --- wrapping struct: linksocks.TokenResponse ---
7950
+ // --- wrapping struct: linksocks.PartnersMessage ---
7970
7951
  //
7971
- //export linksocks_TokenResponse_CTor
7972
- func linksocks_TokenResponse_CTor() CGoHandle {
7973
- return CGoHandle(handleFromPtr_linksocks_TokenResponse(&linksocks.TokenResponse{}))
7952
+ //export linksocks_PartnersMessage_CTor
7953
+ func linksocks_PartnersMessage_CTor() CGoHandle {
7954
+ return CGoHandle(handleFromPtr_linksocks_PartnersMessage(&linksocks.PartnersMessage{}))
7974
7955
  }
7975
7956
 
7976
- //export linksocks_TokenResponse_Success_Get
7977
- func linksocks_TokenResponse_Success_Get(handle CGoHandle) C.char {
7978
- op := ptrFromHandle_linksocks_TokenResponse(handle)
7979
- return boolGoToPy(op.Success)
7957
+ //export linksocks_PartnersMessage_Count_Get
7958
+ func linksocks_PartnersMessage_Count_Get(handle CGoHandle) C.longlong {
7959
+ op := ptrFromHandle_linksocks_PartnersMessage(handle)
7960
+ return C.longlong(op.Count)
7980
7961
  }
7981
7962
 
7982
- //export linksocks_TokenResponse_Success_Set
7983
- func linksocks_TokenResponse_Success_Set(handle CGoHandle, val C.char) {
7984
- op := ptrFromHandle_linksocks_TokenResponse(handle)
7985
- op.Success = boolPyToGo(val)
7963
+ //export linksocks_PartnersMessage_Count_Set
7964
+ func linksocks_PartnersMessage_Count_Set(handle CGoHandle, val C.longlong) {
7965
+ op := ptrFromHandle_linksocks_PartnersMessage(handle)
7966
+ op.Count = int(val)
7986
7967
  }
7987
7968
 
7988
- //export linksocks_TokenResponse_Token_Get
7989
- func linksocks_TokenResponse_Token_Get(handle CGoHandle) *C.char {
7990
- op := ptrFromHandle_linksocks_TokenResponse(handle)
7991
- return C.CString(op.Token)
7969
+ //export linksocks_PartnersMessage_GetType
7970
+ func linksocks_PartnersMessage_GetType(_handle CGoHandle) *C.char {
7971
+ _saved_thread := C.PyEval_SaveThread()
7972
+ defer C.PyEval_RestoreThread(_saved_thread)
7973
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.PartnersMessage")
7974
+ if __err != nil {
7975
+ return C.CString("")
7976
+ }
7977
+ return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.PartnersMessage{})).(*linksocks.PartnersMessage).GetType())
7978
+
7992
7979
  }
7993
7980
 
7994
- //export linksocks_TokenResponse_Token_Set
7995
- func linksocks_TokenResponse_Token_Set(handle CGoHandle, val *C.char) {
7996
- op := ptrFromHandle_linksocks_TokenResponse(handle)
7997
- op.Token = C.GoString(val)
7981
+ // --- wrapping struct: linksocks.AuthResponseMessage ---
7982
+ //
7983
+ //export linksocks_AuthResponseMessage_CTor
7984
+ func linksocks_AuthResponseMessage_CTor() CGoHandle {
7985
+ return CGoHandle(handleFromPtr_linksocks_AuthResponseMessage(&linksocks.AuthResponseMessage{}))
7998
7986
  }
7999
7987
 
8000
- //export linksocks_TokenResponse_Port_Get
8001
- func linksocks_TokenResponse_Port_Get(handle CGoHandle) C.longlong {
8002
- op := ptrFromHandle_linksocks_TokenResponse(handle)
8003
- return C.longlong(op.Port)
7988
+ //export linksocks_AuthResponseMessage_Success_Get
7989
+ func linksocks_AuthResponseMessage_Success_Get(handle CGoHandle) C.char {
7990
+ op := ptrFromHandle_linksocks_AuthResponseMessage(handle)
7991
+ return boolGoToPy(op.Success)
8004
7992
  }
8005
7993
 
8006
- //export linksocks_TokenResponse_Port_Set
8007
- func linksocks_TokenResponse_Port_Set(handle CGoHandle, val C.longlong) {
8008
- op := ptrFromHandle_linksocks_TokenResponse(handle)
8009
- op.Port = int(val)
7994
+ //export linksocks_AuthResponseMessage_Success_Set
7995
+ func linksocks_AuthResponseMessage_Success_Set(handle CGoHandle, val C.char) {
7996
+ op := ptrFromHandle_linksocks_AuthResponseMessage(handle)
7997
+ op.Success = boolPyToGo(val)
8010
7998
  }
8011
7999
 
8012
- //export linksocks_TokenResponse_Error_Get
8013
- func linksocks_TokenResponse_Error_Get(handle CGoHandle) *C.char {
8014
- op := ptrFromHandle_linksocks_TokenResponse(handle)
8000
+ //export linksocks_AuthResponseMessage_Error_Get
8001
+ func linksocks_AuthResponseMessage_Error_Get(handle CGoHandle) *C.char {
8002
+ op := ptrFromHandle_linksocks_AuthResponseMessage(handle)
8015
8003
  return C.CString(op.Error)
8016
8004
  }
8017
8005
 
8018
- //export linksocks_TokenResponse_Error_Set
8019
- func linksocks_TokenResponse_Error_Set(handle CGoHandle, val *C.char) {
8020
- op := ptrFromHandle_linksocks_TokenResponse(handle)
8006
+ //export linksocks_AuthResponseMessage_Error_Set
8007
+ func linksocks_AuthResponseMessage_Error_Set(handle CGoHandle, val *C.char) {
8008
+ op := ptrFromHandle_linksocks_AuthResponseMessage(handle)
8021
8009
  op.Error = C.GoString(val)
8022
8010
  }
8023
8011
 
8024
- // --- wrapping struct: linksocks.ConnectorMessage ---
8012
+ //export linksocks_AuthResponseMessage_GetType
8013
+ func linksocks_AuthResponseMessage_GetType(_handle CGoHandle) *C.char {
8014
+ _saved_thread := C.PyEval_SaveThread()
8015
+ defer C.PyEval_RestoreThread(_saved_thread)
8016
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.AuthResponseMessage")
8017
+ if __err != nil {
8018
+ return C.CString("")
8019
+ }
8020
+ return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.AuthResponseMessage{})).(*linksocks.AuthResponseMessage).GetType())
8021
+
8022
+ }
8023
+
8024
+ // --- wrapping struct: linksocks.ConnectResponseMessage ---
8025
8025
  //
8026
- //export linksocks_ConnectorMessage_CTor
8027
- func linksocks_ConnectorMessage_CTor() CGoHandle {
8028
- return CGoHandle(handleFromPtr_linksocks_ConnectorMessage(&linksocks.ConnectorMessage{}))
8026
+ //export linksocks_ConnectResponseMessage_CTor
8027
+ func linksocks_ConnectResponseMessage_CTor() CGoHandle {
8028
+ return CGoHandle(handleFromPtr_linksocks_ConnectResponseMessage(&linksocks.ConnectResponseMessage{}))
8029
8029
  }
8030
8030
 
8031
- //export linksocks_ConnectorMessage_ChannelID_Get
8032
- func linksocks_ConnectorMessage_ChannelID_Get(handle CGoHandle) CGoHandle {
8033
- op := ptrFromHandle_linksocks_ConnectorMessage(handle)
8034
- return handleFromPtr_uuid_UUID(&op.ChannelID)
8031
+ //export linksocks_ConnectResponseMessage_Success_Get
8032
+ func linksocks_ConnectResponseMessage_Success_Get(handle CGoHandle) C.char {
8033
+ op := ptrFromHandle_linksocks_ConnectResponseMessage(handle)
8034
+ return boolGoToPy(op.Success)
8035
8035
  }
8036
8036
 
8037
- //export linksocks_ConnectorMessage_ConnectorToken_Get
8038
- func linksocks_ConnectorMessage_ConnectorToken_Get(handle CGoHandle) *C.char {
8039
- op := ptrFromHandle_linksocks_ConnectorMessage(handle)
8040
- return C.CString(op.ConnectorToken)
8037
+ //export linksocks_ConnectResponseMessage_Success_Set
8038
+ func linksocks_ConnectResponseMessage_Success_Set(handle CGoHandle, val C.char) {
8039
+ op := ptrFromHandle_linksocks_ConnectResponseMessage(handle)
8040
+ op.Success = boolPyToGo(val)
8041
8041
  }
8042
8042
 
8043
- //export linksocks_ConnectorMessage_ConnectorToken_Set
8044
- func linksocks_ConnectorMessage_ConnectorToken_Set(handle CGoHandle, val *C.char) {
8045
- op := ptrFromHandle_linksocks_ConnectorMessage(handle)
8046
- op.ConnectorToken = C.GoString(val)
8043
+ //export linksocks_ConnectResponseMessage_Error_Get
8044
+ func linksocks_ConnectResponseMessage_Error_Get(handle CGoHandle) *C.char {
8045
+ op := ptrFromHandle_linksocks_ConnectResponseMessage(handle)
8046
+ return C.CString(op.Error)
8047
8047
  }
8048
8048
 
8049
- //export linksocks_ConnectorMessage_Operation_Get
8050
- func linksocks_ConnectorMessage_Operation_Get(handle CGoHandle) *C.char {
8051
- op := ptrFromHandle_linksocks_ConnectorMessage(handle)
8052
- return C.CString(op.Operation)
8049
+ //export linksocks_ConnectResponseMessage_Error_Set
8050
+ func linksocks_ConnectResponseMessage_Error_Set(handle CGoHandle, val *C.char) {
8051
+ op := ptrFromHandle_linksocks_ConnectResponseMessage(handle)
8052
+ op.Error = C.GoString(val)
8053
8053
  }
8054
8054
 
8055
- //export linksocks_ConnectorMessage_Operation_Set
8056
- func linksocks_ConnectorMessage_Operation_Set(handle CGoHandle, val *C.char) {
8057
- op := ptrFromHandle_linksocks_ConnectorMessage(handle)
8058
- op.Operation = C.GoString(val)
8055
+ //export linksocks_ConnectResponseMessage_ChannelID_Get
8056
+ func linksocks_ConnectResponseMessage_ChannelID_Get(handle CGoHandle) CGoHandle {
8057
+ op := ptrFromHandle_linksocks_ConnectResponseMessage(handle)
8058
+ return handleFromPtr_uuid_UUID(&op.ChannelID)
8059
8059
  }
8060
8060
 
8061
- //export linksocks_ConnectorMessage_GetType
8062
- func linksocks_ConnectorMessage_GetType(_handle CGoHandle) *C.char {
8061
+ //export linksocks_ConnectResponseMessage_GetType
8062
+ func linksocks_ConnectResponseMessage_GetType(_handle CGoHandle) *C.char {
8063
8063
  _saved_thread := C.PyEval_SaveThread()
8064
8064
  defer C.PyEval_RestoreThread(_saved_thread)
8065
- vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ConnectorMessage")
8065
+ vifc, __err := gopyh.VarFromHandleTry((gopyh.CGoHandle)(_handle), "*linksocks.ConnectResponseMessage")
8066
8066
  if __err != nil {
8067
8067
  return C.CString("")
8068
8068
  }
8069
- return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ConnectorMessage{})).(*linksocks.ConnectorMessage).GetType())
8069
+ return C.CString(gopyh.Embed(vifc, reflect.TypeOf(linksocks.ConnectResponseMessage{})).(*linksocks.ConnectResponseMessage).GetType())
8070
8070
 
8071
8071
  }
8072
8072
 
@@ -8076,27 +8076,27 @@ func linksocks_ConnectorMessage_GetType(_handle CGoHandle) *C.char {
8076
8076
 
8077
8077
  // ---- Constructors ---
8078
8078
 
8079
- //export linksocks_NewContextWithCancel
8080
- func linksocks_NewContextWithCancel() CGoHandle {
8079
+ //export linksocks_NewLinkSocksClient
8080
+ func linksocks_NewLinkSocksClient(token *C.char, opt CGoHandle) CGoHandle {
8081
8081
  _saved_thread := C.PyEval_SaveThread()
8082
8082
  defer C.PyEval_RestoreThread(_saved_thread)
8083
- return handleFromPtr_Ptr_linksocks_ContextWithCancel(linksocks.NewContextWithCancel())
8083
+ return handleFromPtr_Ptr_linksocks_LinkSocksClient(linksocks.NewLinkSocksClient(C.GoString(token), ptrFromHandle_Ptr_linksocks_ClientOption(opt)))
8084
8084
 
8085
8085
  }
8086
8086
 
8087
- //export linksocks_NewPortPoolFromRange
8088
- func linksocks_NewPortPoolFromRange(start C.longlong, end C.longlong) CGoHandle {
8087
+ //export linksocks_NewRelay
8088
+ func linksocks_NewRelay(logger CGoHandle, option CGoHandle) CGoHandle {
8089
8089
  _saved_thread := C.PyEval_SaveThread()
8090
8090
  defer C.PyEval_RestoreThread(_saved_thread)
8091
- return handleFromPtr_Ptr_linksocks_PortPool(linksocks.NewPortPoolFromRange(int(start), int(end)))
8091
+ return handleFromPtr_Ptr_linksocks_Relay(linksocks.NewRelay(*ptrFromHandle_zerolog_Logger(logger), ptrFromHandle_Ptr_linksocks_RelayOption(option)))
8092
8092
 
8093
8093
  }
8094
8094
 
8095
- //export linksocks_NewPortPool
8096
- func linksocks_NewPortPool(ports CGoHandle) CGoHandle {
8095
+ //export linksocks_NewLinkSocksServer
8096
+ func linksocks_NewLinkSocksServer(opt CGoHandle) CGoHandle {
8097
8097
  _saved_thread := C.PyEval_SaveThread()
8098
8098
  defer C.PyEval_RestoreThread(_saved_thread)
8099
- return handleFromPtr_Ptr_linksocks_PortPool(linksocks.NewPortPool(deptrFromHandle_Slice_int(ports)))
8099
+ return handleFromPtr_Ptr_linksocks_LinkSocksServer(linksocks.NewLinkSocksServer(ptrFromHandle_Ptr_linksocks_ServerOption(opt)))
8100
8100
 
8101
8101
  }
8102
8102
 
@@ -8116,35 +8116,35 @@ func linksocks_NewDefaultRelayOption() CGoHandle {
8116
8116
 
8117
8117
  }
8118
8118
 
8119
- //export linksocks_NewSocketManager
8120
- func linksocks_NewSocketManager(host *C.char, log CGoHandle) CGoHandle {
8119
+ //export linksocks_DefaultReverseTokenOptions
8120
+ func linksocks_DefaultReverseTokenOptions() CGoHandle {
8121
8121
  _saved_thread := C.PyEval_SaveThread()
8122
8122
  defer C.PyEval_RestoreThread(_saved_thread)
8123
- return handleFromPtr_Ptr_linksocks_SocketManager(linksocks.NewSocketManager(C.GoString(host), *ptrFromHandle_zerolog_Logger(log)))
8123
+ return handleFromPtr_Ptr_linksocks_ReverseTokenOptions(linksocks.DefaultReverseTokenOptions())
8124
8124
 
8125
8125
  }
8126
8126
 
8127
- //export linksocks_NewLinkSocksClient
8128
- func linksocks_NewLinkSocksClient(token *C.char, opt CGoHandle) CGoHandle {
8127
+ //export linksocks_DefaultServerOption
8128
+ func linksocks_DefaultServerOption() CGoHandle {
8129
8129
  _saved_thread := C.PyEval_SaveThread()
8130
8130
  defer C.PyEval_RestoreThread(_saved_thread)
8131
- return handleFromPtr_Ptr_linksocks_LinkSocksClient(linksocks.NewLinkSocksClient(C.GoString(token), ptrFromHandle_Ptr_linksocks_ClientOption(opt)))
8131
+ return handleFromPtr_Ptr_linksocks_ServerOption(linksocks.DefaultServerOption())
8132
8132
 
8133
8133
  }
8134
8134
 
8135
- //export linksocks_NewRelay
8136
- func linksocks_NewRelay(logger CGoHandle, option CGoHandle) CGoHandle {
8135
+ //export linksocks_NewWSConn
8136
+ func linksocks_NewWSConn(conn CGoHandle, label *C.char, logger CGoHandle) CGoHandle {
8137
8137
  _saved_thread := C.PyEval_SaveThread()
8138
8138
  defer C.PyEval_RestoreThread(_saved_thread)
8139
- return handleFromPtr_Ptr_linksocks_Relay(linksocks.NewRelay(*ptrFromHandle_zerolog_Logger(logger), ptrFromHandle_Ptr_linksocks_RelayOption(option)))
8139
+ return handleFromPtr_Ptr_linksocks_WSConn(linksocks.NewWSConn(ptrFromHandle_Ptr_websocket_Conn(conn), C.GoString(label), *ptrFromHandle_zerolog_Logger(logger)))
8140
8140
 
8141
8141
  }
8142
8142
 
8143
- //export linksocks_DefaultReverseTokenOptions
8144
- func linksocks_DefaultReverseTokenOptions() CGoHandle {
8143
+ //export linksocks_NewAPIHandler
8144
+ func linksocks_NewAPIHandler(server CGoHandle, apiKey *C.char) CGoHandle {
8145
8145
  _saved_thread := C.PyEval_SaveThread()
8146
8146
  defer C.PyEval_RestoreThread(_saved_thread)
8147
- return handleFromPtr_Ptr_linksocks_ReverseTokenOptions(linksocks.DefaultReverseTokenOptions())
8147
+ return handleFromPtr_Ptr_linksocks_APIHandler(linksocks.NewAPIHandler(ptrFromHandle_Ptr_linksocks_LinkSocksServer(server), C.GoString(apiKey)))
8148
8148
 
8149
8149
  }
8150
8150
 
@@ -8156,112 +8156,65 @@ func linksocks_NewCLI() CGoHandle {
8156
8156
 
8157
8157
  }
8158
8158
 
8159
- //export linksocks_NewLinkSocksServer
8160
- func linksocks_NewLinkSocksServer(opt CGoHandle) CGoHandle {
8159
+ //export linksocks_NewContextWithCancel
8160
+ func linksocks_NewContextWithCancel() CGoHandle {
8161
8161
  _saved_thread := C.PyEval_SaveThread()
8162
8162
  defer C.PyEval_RestoreThread(_saved_thread)
8163
- return handleFromPtr_Ptr_linksocks_LinkSocksServer(linksocks.NewLinkSocksServer(ptrFromHandle_Ptr_linksocks_ServerOption(opt)))
8163
+ return handleFromPtr_Ptr_linksocks_ContextWithCancel(linksocks.NewContextWithCancel())
8164
8164
 
8165
8165
  }
8166
8166
 
8167
- //export linksocks_NewWSConn
8168
- func linksocks_NewWSConn(conn CGoHandle, label *C.char, logger CGoHandle) CGoHandle {
8167
+ //export linksocks_NewPortPoolFromRange
8168
+ func linksocks_NewPortPoolFromRange(start C.longlong, end C.longlong) CGoHandle {
8169
8169
  _saved_thread := C.PyEval_SaveThread()
8170
8170
  defer C.PyEval_RestoreThread(_saved_thread)
8171
- return handleFromPtr_Ptr_linksocks_WSConn(linksocks.NewWSConn(ptrFromHandle_Ptr_websocket_Conn(conn), C.GoString(label), *ptrFromHandle_zerolog_Logger(logger)))
8171
+ return handleFromPtr_Ptr_linksocks_PortPool(linksocks.NewPortPoolFromRange(int(start), int(end)))
8172
8172
 
8173
8173
  }
8174
8174
 
8175
- //export linksocks_NewAPIHandler
8176
- func linksocks_NewAPIHandler(server CGoHandle, apiKey *C.char) CGoHandle {
8175
+ //export linksocks_NewPortPool
8176
+ func linksocks_NewPortPool(ports CGoHandle) CGoHandle {
8177
8177
  _saved_thread := C.PyEval_SaveThread()
8178
8178
  defer C.PyEval_RestoreThread(_saved_thread)
8179
- return handleFromPtr_Ptr_linksocks_APIHandler(linksocks.NewAPIHandler(ptrFromHandle_Ptr_linksocks_LinkSocksServer(server), C.GoString(apiKey)))
8179
+ return handleFromPtr_Ptr_linksocks_PortPool(linksocks.NewPortPool(deptrFromHandle_Slice_int(ports)))
8180
8180
 
8181
8181
  }
8182
8182
 
8183
- //export linksocks_DefaultServerOption
8184
- func linksocks_DefaultServerOption() CGoHandle {
8183
+ //export linksocks_NewSocketManager
8184
+ func linksocks_NewSocketManager(host *C.char, log CGoHandle) CGoHandle {
8185
8185
  _saved_thread := C.PyEval_SaveThread()
8186
8186
  defer C.PyEval_RestoreThread(_saved_thread)
8187
- return handleFromPtr_Ptr_linksocks_ServerOption(linksocks.DefaultServerOption())
8187
+ return handleFromPtr_Ptr_linksocks_SocketManager(linksocks.NewSocketManager(C.GoString(host), *ptrFromHandle_zerolog_Logger(log)))
8188
8188
 
8189
8189
  }
8190
8190
 
8191
8191
  // ---- Functions ---
8192
8192
 
8193
- //export linksocks_NewLoggerWithID
8194
- func linksocks_NewLoggerWithID(id *C.char) CGoHandle {
8195
- _saved_thread := C.PyEval_SaveThread()
8196
- defer C.PyEval_RestoreThread(_saved_thread)
8197
- cret := linksocks.NewLoggerWithID(C.GoString(id))
8198
-
8199
- return handleFromPtr_zerolog_Logger(&cret)
8200
- }
8201
-
8202
- //export linksocks_GetLogEntries
8203
- func linksocks_GetLogEntries() CGoHandle {
8204
- _saved_thread := C.PyEval_SaveThread()
8205
- defer C.PyEval_RestoreThread(_saved_thread)
8206
- cret := linksocks.GetLogEntries()
8207
-
8208
- return handleFromPtr_Slice_linksocks_LogEntry(&cret)
8209
- }
8210
-
8211
- //export linksocks_NewLogger
8212
- func linksocks_NewLogger(cb *C.PyObject) CGoHandle {
8213
- _fun_arg := cb
8193
+ //export linksocks_Background
8194
+ func linksocks_Background() CGoHandle {
8214
8195
  _saved_thread := C.PyEval_SaveThread()
8215
8196
  defer C.PyEval_RestoreThread(_saved_thread)
8216
- cret := linksocks.NewLogger(func(line string) {
8217
- if C.PyCallable_Check(_fun_arg) == 0 {
8218
- return
8219
- }
8220
- _gstate := C.PyGILState_Ensure()
8221
- _fcargs := C.PyTuple_New(1)
8222
- C.PyTuple_SetItem(_fcargs, 0, C.gopy_build_string(C.CString(line)))
8223
- C.PyObject_CallObject(_fun_arg, _fcargs)
8224
- C.gopy_decref(_fcargs)
8225
- C.gopy_err_handle()
8226
- C.PyGILState_Release(_gstate)
8227
- })
8228
-
8229
- return handleFromPtr_zerolog_Logger(&cret)
8230
- }
8231
-
8232
- //export linksocks_ParseMessage
8233
- func linksocks_ParseMessage(data CGoHandle) CGoHandle {
8234
- _saved_thread := C.PyEval_SaveThread()
8235
- cret, __err := linksocks.ParseMessage(deptrFromHandle_Slice_byte(data))
8197
+ return handleFromPtr_context_Context(linksocks.Background())
8236
8198
 
8237
- C.PyEval_RestoreThread(_saved_thread)
8238
- if __err != nil {
8239
- estr := C.CString(__err.Error())
8240
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
8241
- C.free(unsafe.Pointer(estr))
8242
- return handleFromPtr_linksocks_BaseMessage(nil)
8243
- }
8244
- return handleFromPtr_linksocks_BaseMessage(cret)
8245
8199
  }
8246
8200
 
8247
- //export linksocks_SetLoggerGlobalLevel
8248
- func linksocks_SetLoggerGlobalLevel(level C.char, goRun C.char) {
8201
+ //export linksocks_CancelLogWaiters
8202
+ func linksocks_CancelLogWaiters(goRun C.char) {
8249
8203
  _saved_thread := C.PyEval_SaveThread()
8250
8204
  defer C.PyEval_RestoreThread(_saved_thread)
8251
8205
  if boolPyToGo(goRun) {
8252
- go linksocks.SetLoggerGlobalLevel(zerolog.Level(int8(level)))
8206
+ go linksocks.CancelLogWaiters()
8253
8207
  } else {
8254
- linksocks.SetLoggerGlobalLevel(zerolog.Level(int8(level)))
8208
+ linksocks.CancelLogWaiters()
8255
8209
  }
8256
8210
  }
8257
8211
 
8258
- //export linksocks_WaitForLogEntries
8259
- func linksocks_WaitForLogEntries(timeoutMs C.longlong) CGoHandle {
8212
+ //export linksocks_NewContext
8213
+ func linksocks_NewContext() CGoHandle {
8260
8214
  _saved_thread := C.PyEval_SaveThread()
8261
8215
  defer C.PyEval_RestoreThread(_saved_thread)
8262
- cret := linksocks.WaitForLogEntries(int64(timeoutMs))
8216
+ return handleFromPtr_context_Context(linksocks.NewContext())
8263
8217
 
8264
- return handleFromPtr_Slice_linksocks_LogEntry(&cret)
8265
8218
  }
8266
8219
 
8267
8220
  //export linksocks_PackMessage
@@ -8279,21 +8232,6 @@ func linksocks_PackMessage(msg CGoHandle) CGoHandle {
8279
8232
  return handleFromPtr_Slice_byte(&cret)
8280
8233
  }
8281
8234
 
8282
- //export linksocks_ParseDuration
8283
- func linksocks_ParseDuration(s *C.char) C.longlong {
8284
- _saved_thread := C.PyEval_SaveThread()
8285
- cret, __err := linksocks.ParseDuration(C.GoString(s))
8286
-
8287
- C.PyEval_RestoreThread(_saved_thread)
8288
- if __err != nil {
8289
- estr := C.CString(__err.Error())
8290
- C.PyErr_SetString(C.PyExc_RuntimeError, estr)
8291
- C.free(unsafe.Pointer(estr))
8292
- return C.longlong(int64(0))
8293
- }
8294
- return C.longlong(int64(cret))
8295
- }
8296
-
8297
8235
  //export linksocks_DebugLog
8298
8236
  func linksocks_DebugLog(logger CGoHandle, msg *C.char, goRun C.char) {
8299
8237
  _saved_thread := C.PyEval_SaveThread()
@@ -8305,12 +8243,25 @@ func linksocks_DebugLog(logger CGoHandle, msg *C.char, goRun C.char) {
8305
8243
  }
8306
8244
  }
8307
8245
 
8308
- //export linksocks_NewContext
8309
- func linksocks_NewContext() CGoHandle {
8246
+ //export linksocks_NewLogger
8247
+ func linksocks_NewLogger(cb *C.PyObject) CGoHandle {
8248
+ _fun_arg := cb
8310
8249
  _saved_thread := C.PyEval_SaveThread()
8311
8250
  defer C.PyEval_RestoreThread(_saved_thread)
8312
- return handleFromPtr_context_Context(linksocks.NewContext())
8251
+ cret := linksocks.NewLogger(func(line string) {
8252
+ if C.PyCallable_Check(_fun_arg) == 0 {
8253
+ return
8254
+ }
8255
+ _gstate := C.PyGILState_Ensure()
8256
+ _fcargs := C.PyTuple_New(1)
8257
+ C.PyTuple_SetItem(_fcargs, 0, C.gopy_build_string(C.CString(line)))
8258
+ C.PyObject_CallObject(_fun_arg, _fcargs)
8259
+ C.gopy_decref(_fcargs)
8260
+ C.gopy_err_handle()
8261
+ C.PyGILState_Release(_gstate)
8262
+ })
8313
8263
 
8264
+ return handleFromPtr_zerolog_Logger(&cret)
8314
8265
  }
8315
8266
 
8316
8267
  //export linksocks_NewLoggerWithLevel
@@ -8334,15 +8285,22 @@ func linksocks_NewLoggerWithLevel(level C.char, cb *C.PyObject) CGoHandle {
8334
8285
  return handleFromPtr_zerolog_Logger(&cret)
8335
8286
  }
8336
8287
 
8337
- //export linksocks_CancelLogWaiters
8338
- func linksocks_CancelLogWaiters(goRun C.char) {
8288
+ //export linksocks_WaitForLogEntries
8289
+ func linksocks_WaitForLogEntries(timeoutMs C.longlong) CGoHandle {
8339
8290
  _saved_thread := C.PyEval_SaveThread()
8340
8291
  defer C.PyEval_RestoreThread(_saved_thread)
8341
- if boolPyToGo(goRun) {
8342
- go linksocks.CancelLogWaiters()
8343
- } else {
8344
- linksocks.CancelLogWaiters()
8345
- }
8292
+ cret := linksocks.WaitForLogEntries(int64(timeoutMs))
8293
+
8294
+ return handleFromPtr_Slice_linksocks_LogEntry(&cret)
8295
+ }
8296
+
8297
+ //export linksocks_GetLogEntries
8298
+ func linksocks_GetLogEntries() CGoHandle {
8299
+ _saved_thread := C.PyEval_SaveThread()
8300
+ defer C.PyEval_RestoreThread(_saved_thread)
8301
+ cret := linksocks.GetLogEntries()
8302
+
8303
+ return handleFromPtr_Slice_linksocks_LogEntry(&cret)
8346
8304
  }
8347
8305
 
8348
8306
  //export linksocks_NewLoggerWithIDAndLevel
@@ -8365,10 +8323,52 @@ func linksocks_CancelGlobalContext(goRun C.char) {
8365
8323
  }
8366
8324
  }
8367
8325
 
8368
- //export linksocks_Background
8369
- func linksocks_Background() CGoHandle {
8326
+ //export linksocks_ParseDuration
8327
+ func linksocks_ParseDuration(s *C.char) C.longlong {
8328
+ _saved_thread := C.PyEval_SaveThread()
8329
+ cret, __err := linksocks.ParseDuration(C.GoString(s))
8330
+
8331
+ C.PyEval_RestoreThread(_saved_thread)
8332
+ if __err != nil {
8333
+ estr := C.CString(__err.Error())
8334
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
8335
+ C.free(unsafe.Pointer(estr))
8336
+ return C.longlong(int64(0))
8337
+ }
8338
+ return C.longlong(int64(cret))
8339
+ }
8340
+
8341
+ //export linksocks_SetLoggerGlobalLevel
8342
+ func linksocks_SetLoggerGlobalLevel(level C.char, goRun C.char) {
8370
8343
  _saved_thread := C.PyEval_SaveThread()
8371
8344
  defer C.PyEval_RestoreThread(_saved_thread)
8372
- return handleFromPtr_context_Context(linksocks.Background())
8345
+ if boolPyToGo(goRun) {
8346
+ go linksocks.SetLoggerGlobalLevel(zerolog.Level(int8(level)))
8347
+ } else {
8348
+ linksocks.SetLoggerGlobalLevel(zerolog.Level(int8(level)))
8349
+ }
8350
+ }
8351
+
8352
+ //export linksocks_NewLoggerWithID
8353
+ func linksocks_NewLoggerWithID(id *C.char) CGoHandle {
8354
+ _saved_thread := C.PyEval_SaveThread()
8355
+ defer C.PyEval_RestoreThread(_saved_thread)
8356
+ cret := linksocks.NewLoggerWithID(C.GoString(id))
8373
8357
 
8358
+ return handleFromPtr_zerolog_Logger(&cret)
8359
+ }
8360
+
8361
+ //export linksocks_ParseMessage
8362
+ func linksocks_ParseMessage(data CGoHandle) CGoHandle {
8363
+ _saved_thread := C.PyEval_SaveThread()
8364
+ cret, __err := linksocks.ParseMessage(deptrFromHandle_Slice_byte(data))
8365
+
8366
+ C.PyEval_RestoreThread(_saved_thread)
8367
+ if __err != nil {
8368
+ estr := C.CString(__err.Error())
8369
+ C.PyErr_SetString(C.PyExc_RuntimeError, estr)
8370
+ C.free(unsafe.Pointer(estr))
8371
+ return handleFromPtr_linksocks_BaseMessage(nil)
8372
+ }
8373
+ return handleFromPtr_linksocks_BaseMessage(cret)
8374
8374
  }