Haskell bindings
This commit is contained in:
@@ -3,6 +3,7 @@ package main
|
|||||||
import "C"
|
import "C"
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
|
"fmt"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/Akilan1999/p2p-rendering-computation/abstractions"
|
"github.com/Akilan1999/p2p-rendering-computation/abstractions"
|
||||||
@@ -124,7 +125,7 @@ func EscapeFirewall(HostOutsideNATIP *C.char, HostOutsideNATPort *C.char, intern
|
|||||||
|
|
||||||
time.Sleep(5 * time.Second)
|
time.Sleep(5 * time.Second)
|
||||||
|
|
||||||
ExposedPort, err := frp.StartFRPClientForServer(C.GoString(HostOutsideNATIP)+":"+C.GoString(HostOutsideNATPort), C.GoString(serverPort), C.GoString(internalPort), "")
|
ExposedPort, err := frp.StartFRPClientForServer(C.GoString(HostOutsideNATIP)+":"+C.GoString(HostOutsideNATPort), serverPort, C.GoString(internalPort), "")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return C.CString(err.Error())
|
return C.CString(err.Error())
|
||||||
}
|
}
|
||||||
@@ -134,6 +135,7 @@ func EscapeFirewall(HostOutsideNATIP *C.char, HostOutsideNATPort *C.char, intern
|
|||||||
|
|
||||||
//export MapPort
|
//export MapPort
|
||||||
func MapPort(Port *C.char) *C.char {
|
func MapPort(Port *C.char) *C.char {
|
||||||
|
fmt.Println(C.GoString(Port))
|
||||||
entireAddress, _, err := abstractions.MapPort(C.GoString(Port))
|
entireAddress, _, err := abstractions.MapPort(C.GoString(Port))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return C.CString(err.Error())
|
return C.CString(err.Error())
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ USAGE:
|
|||||||
p2prc [global options] command [command options] [arguments...]
|
p2prc [global options] command [command options] [arguments...]
|
||||||
|
|
||||||
VERSION:
|
VERSION:
|
||||||
<version no>
|
2.0.0
|
||||||
|
|
||||||
COMMANDS:
|
COMMANDS:
|
||||||
help, h Shows a list of commands or help for one command
|
help, h Shows a list of commands or help for one command
|
||||||
@@ -81,6 +81,7 @@ GLOBAL OPTIONS:
|
|||||||
--ViewImages value, --vi value View images available on the server IP address [$VIEW_IMAGES]
|
--ViewImages value, --vi value View images available on the server IP address [$VIEW_IMAGES]
|
||||||
--CreateVM value, --touch value Creates Docker container on the selected server [$CREATE_VM]
|
--CreateVM value, --touch value Creates Docker container on the selected server [$CREATE_VM]
|
||||||
--ContainerName value, --cn value Specifying the container run on the server side [$CONTAINER_NAME]
|
--ContainerName value, --cn value Specifying the container run on the server side [$CONTAINER_NAME]
|
||||||
|
--BaseImage value, --bi value Specifying the docker base image to template the dockerfile [$CONTAINER_NAME]
|
||||||
--RemoveVM value, --rm value Stop and Remove Docker container (IP:port) accompanied by container ID via --ID or --id [$REMOVE_VM]
|
--RemoveVM value, --rm value Stop and Remove Docker container (IP:port) accompanied by container ID via --ID or --id [$REMOVE_VM]
|
||||||
--ID value, --id value Docker Container ID [$ID]
|
--ID value, --id value Docker Container ID [$ID]
|
||||||
--Ports value, -p value Number of ports to open for the Docker Container [$NUM_PORTS]
|
--Ports value, -p value Number of ports to open for the Docker Container [$NUM_PORTS]
|
||||||
@@ -96,10 +97,13 @@ GLOBAL OPTIONS:
|
|||||||
--Groups, --groups View all groups (default: false) [$GROUPS]
|
--Groups, --groups View all groups (default: false) [$GROUPS]
|
||||||
--RemoveContainerGroup, --rmcgroup Remove specific container in the group (default: false) [$REMOVE_CONTAINER_GROUP]
|
--RemoveContainerGroup, --rmcgroup Remove specific container in the group (default: false) [$REMOVE_CONTAINER_GROUP]
|
||||||
--RemoveGroup value, --rmgroup value Removes the entire group [$REMOVE_GROUP]
|
--RemoveGroup value, --rmgroup value Removes the entire group [$REMOVE_GROUP]
|
||||||
|
--MAPPort value, --mp value Maps port for a specific port provided as the parameter [$MAPPORT]
|
||||||
|
--DomainName value, --dn value While mapping ports allows to set a domain name to create a mapping in the proxy server [$DOMAINNAME]
|
||||||
--Generate value, --gen value Generates a new copy of P2PRC which can be modified based on your needs [$GENERATE]
|
--Generate value, --gen value Generates a new copy of P2PRC which can be modified based on your needs [$GENERATE]
|
||||||
--ModuleName value, --mod value New go project module name [$MODULENAME]
|
--ModuleName value, --mod value New go project module name [$MODULENAME]
|
||||||
--PullPlugin value, --pp value Pulls plugin from git repos [$PULLPLUGIN]
|
--PullPlugin value, --pp value Pulls plugin from git repos [$PULLPLUGIN]
|
||||||
--RemovePlugin value, --rp value Removes plugin [$REMOVEPLUGIN]
|
--RemovePlugin value, --rp value Removes plugin [$REMOVEPLUGIN]
|
||||||
|
--AddMetaData value, --amd value Adds metadata about the current node in the p2p network which is then propagated through the network [$ADDMETADATA]
|
||||||
--help, -h show help (default: false)
|
--help, -h show help (default: false)
|
||||||
--version, -v print the version (default: false)
|
--version, -v print the version (default: false)
|
||||||
|
|
||||||
@@ -213,6 +217,11 @@ p2prc --rp <plugin name>
|
|||||||
p2prc --amd "custom metadata"
|
p2prc --amd "custom metadata"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Map port
|
||||||
|
```
|
||||||
|
p2prc --mp <internal port no from your machine> --dn <domain name you want the port linked to>
|
||||||
|
```
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
--------------
|
--------------
|
||||||
|
|||||||
18
cert.pem
Normal file
18
cert.pem
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIC9DCCAdygAwIBAgIQBDLR74zO5RQhQ3A3Qc8ATDANBgkqhkiG9w0BAQsFADAS
|
||||||
|
MRAwDgYDVQQKEwdBY21lIENvMB4XDTI0MDgyMzAyNTAyMFoXDTI1MDgyMzAyNTAy
|
||||||
|
MFowEjEQMA4GA1UEChMHQWNtZSBDbzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
|
||||||
|
AQoCggEBAJttaguoiojkhQLxnSzAvQCLlhIUH3o5JYIBqJ0pGwLo1gzY757WVyup
|
||||||
|
JBw1RzH9zL2Yv0h3vDkZ7OdpnuLub6rU4t936fdyimlXkO7PzJktai3TykJa2tbL
|
||||||
|
/yWnf6j8ndlzFHxrlm67Gx/lkMBJGC9CnAfA+9oArzLo1Pg9Js8OfHOsWsJNOR8k
|
||||||
|
cKj3Ym75t0qflbllnhRRf/En8rNRpmyStmyEErXRaQb37pVMK1jhJ+1E7Gt4/Pap
|
||||||
|
WT2VMrx9TKjE/j25qFm2oX5itVZNPRzQ8VSPsZ3Hxay6PMf4kdXHohjVxWYJF8ex
|
||||||
|
hXyrvr+iq6Dybz3FI2tkzcBNx4cn/H0CAwEAAaNGMEQwDgYDVR0PAQH/BAQDAgWg
|
||||||
|
MBMGA1UdJQQMMAoGCCsGAQUFBwMBMAwGA1UdEwEB/wQCMAAwDwYDVR0RBAgwBocE
|
||||||
|
TWH5GDANBgkqhkiG9w0BAQsFAAOCAQEASAs1gSkNPZkXFuXOHX+89MfVp+JKb8Uu
|
||||||
|
KwcRFvzMe0iOCCWYJfWFq7HHZMdJcgPl1Bvps23usRd3FRJj9Vf9cydSn+ulgmI+
|
||||||
|
BtNdUvPS2YyrzavDI2uqIMR6i8DHK0Duq2Et66SGEUzolZ0P1Xz3h6Lxf4p4MT6q
|
||||||
|
2kjr0OmfFce6zjuTt0/W0pX1rVyvRTEjUp8LFC/u/ETSRet8Ql/26TfQFPmy5bKt
|
||||||
|
PPiECIqOT6ll/yZ1R82dzvMIDt/tDrW3YF6aB3U+vi3i2qhxvcLnuCjrlrQ1AJbQ
|
||||||
|
8bIleUGVU2fcHS7Wb6Pv9ZNenoKnf0kFJcFIXYoW6gVOwPtlvwss8Q==
|
||||||
|
-----END CERTIFICATE-----
|
||||||
28
key.pem
Normal file
28
key.pem
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCbbWoLqIqI5IUC
|
||||||
|
8Z0swL0Ai5YSFB96OSWCAaidKRsC6NYM2O+e1lcrqSQcNUcx/cy9mL9Id7w5Gezn
|
||||||
|
aZ7i7m+q1OLfd+n3coppV5Duz8yZLWot08pCWtrWy/8lp3+o/J3ZcxR8a5Zuuxsf
|
||||||
|
5ZDASRgvQpwHwPvaAK8y6NT4PSbPDnxzrFrCTTkfJHCo92Ju+bdKn5W5ZZ4UUX/x
|
||||||
|
J/KzUaZskrZshBK10WkG9+6VTCtY4SftROxrePz2qVk9lTK8fUyoxP49uahZtqF+
|
||||||
|
YrVWTT0c0PFUj7Gdx8WsujzH+JHVx6IY1cVmCRfHsYV8q76/oqug8m89xSNrZM3A
|
||||||
|
TceHJ/x9AgMBAAECggEADzFEulsBH5xmvADuAh/c2Z7LTn0VDpdjaS/MUYBhGYm0
|
||||||
|
0pCp63a8EpJ36yHyEZrjVm0F1YmOpm44T+5tD3WLCMHCY2GPRxa1HNLoYc+CCj78
|
||||||
|
L/qRvKaw2WobSIz014nJzCWJjRffHne/kQCZg5IhgQ0bv05Hz+ldNra3ioQ/tOFo
|
||||||
|
nc0asUYmIaQDSANuW4GejMJlxVfISIpv1OH+bWt0bpdKk8tg+b+xe2h8i7VK2URL
|
||||||
|
3WUZNpWXFSCeWR2Qp+ugjaTMRUDHp9lY8OXoKWay5/eU6aZXn+KXdnbmOIJ+dfus
|
||||||
|
JIBoAgSvMfXMvx9hS6YofZ6bYmx512/G+iuDqdxDwQKBgQDHxH0C9w9abZ/GYFAv
|
||||||
|
0vjr3ZoTjJjPipqEqJM7qDLYsXaHM7OzvzfVC4MMYQuduHXaJi5elyFPUJ6J2gx1
|
||||||
|
x6FlwG2V0SmsQMa24V07H8WH8Nj/gYn2Adbew87QHQNNSZgShNvCtd+MJcqOw1TD
|
||||||
|
KJKbYGrIfvgUpjDTwAnh8AOZiQKBgQDHLbes5iSOsmRCOGZdF5F07orNZRXLFpgJ
|
||||||
|
I0NMhtlay/w/Z0COEvJTW9jznrgE2j04xQ0tsTkpBjQ7dUftkkzRMnU5L7KOVczM
|
||||||
|
O2Yk9eqQD1X7NMzvZDmAAQrjOGWahyUqYsz+CRdanNPA5cXm7aS38ZmYKGM57vBs
|
||||||
|
YDxPhB9yVQKBgAwMpQG1xz5MGHQNwShxUERh1HZTZ7A1CwbvaBoUFiUN5zlWfANe
|
||||||
|
iE6YaCop/FpiEvG6lddsxDyVf0qPVWsRRIHvrmx39kyGh7XmOApl6zM86snWlWy6
|
||||||
|
RaygIOxao6VYyAxt6ReAguBgMyyTSZyP6O/oS+iWB/6u24kaLz5qjL0JAoGAd0Kn
|
||||||
|
jQ5Ma2jjYUc1+52mCbbfQ3a4Yt8Hb8k+fa7srFIhmrEvVSKBGGqRb+XkV3t5Vume
|
||||||
|
J3LLQAYn9kYWKGkGN+iXigNGTbWQJ+WVFqJsrY+RMxX9c4W2bC+znjPhmnI7TbLU
|
||||||
|
/XLiGe53WDP8mHZIv58ZEaN1LnYkXTAOTKpWzfUCgYAVgv8aLS6wyJVJnNiTD5Rx
|
||||||
|
QvA/nmNfJjq0jYyF0BM5IvfIxlBni/+jdbSib0YJFF3iDExeX9j50XyI2g1Lcxl1
|
||||||
|
URtJpKhbCzOiAs6D5HNcVfJN9/3u5T1uafoaOt0oVKjPDrzI0TynBYAxUWuB1GoG
|
||||||
|
FUwGV3CVAuvxNGanc1rhvA==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
Reference in New Issue
Block a user