summaryrefslogtreecommitdiff
path: root/webircgateway/pkg/identd/rpcclient.go
diff options
context:
space:
mode:
Diffstat (limited to 'webircgateway/pkg/identd/rpcclient.go')
-rw-r--r--webircgateway/pkg/identd/rpcclient.go59
1 files changed, 0 insertions, 59 deletions
diff --git a/webircgateway/pkg/identd/rpcclient.go b/webircgateway/pkg/identd/rpcclient.go
deleted file mode 100644
index 37aec3e..0000000
--- a/webircgateway/pkg/identd/rpcclient.go
+++ /dev/null
@@ -1,59 +0,0 @@
-package identd
-
-import "net"
-import "fmt"
-import "time"
-
-func MakeRpcClient(appName string) *RpcClient {
- return &RpcClient{AppName: appName}
-}
-
-type RpcClient struct {
- AppName string
- Conn *net.Conn
-}
-
-func (rpc *RpcClient) ConnectAndReconnect(serverAddress string) {
- for {
- if rpc.Conn == nil {
- println("Connecting to identd RPC...")
- rpc.Connect(serverAddress)
- }
-
- time.Sleep(time.Second * 3)
- }
-}
-
-func (rpc *RpcClient) Connect(serverAddress string) error {
- conn, err := net.Dial("tcp", serverAddress)
- if err != nil {
- return err
- }
-
- rpc.Conn = &conn
- rpc.Write("id " + rpc.AppName)
-
- return nil
-}
-
-func (rpc *RpcClient) Write(line string) error {
- if rpc.Conn == nil {
- return fmt.Errorf("not connected")
- }
-
- conn := *rpc.Conn
- _, err := conn.Write([]byte(line + "\n"))
- if err != nil {
- rpc.Conn = nil
- conn.Close()
- }
- return err
-}
-
-func (rpc *RpcClient) AddIdent(lport int, rport int, username string, iface string) {
- rpc.Write(fmt.Sprintf("add %s %d %d %s", username, lport, rport, iface))
-}
-
-func (rpc *RpcClient) RemoveIdent(lport int, rport int, username string, iface string) {
- rpc.Write(fmt.Sprintf("del %d %d %s", lport, rport, iface))
-}