Compare commits

...

3 Commits

Author SHA1 Message Date
4ee522c26c remove duplicate rpcClient init 2024-10-10 18:27:47 +02:00
b19eb8f422 fix pubsub broadcast validation error 2024-10-10 14:50:11 +02:00
817a14704b ppass handle debug flag 2024-10-10 14:16:21 +02:00
2 changed files with 31 additions and 94 deletions

View File

@@ -1,8 +1,8 @@
package main
import (
"flag"
"os"
RPC "net/rpc"
"github.com/spf13/cobra"
@@ -12,7 +12,9 @@ import (
)
var (
dbPath = flag.String("db", "./db", "db file path")
dbPath string
debug bool
rpcClient *RPC.Client
)
// Create the root command
@@ -26,19 +28,9 @@ var listCmd = &cobra.Command{
Use: "list",
Short: "List all passwords",
Run: func(cmd *cobra.Command, args []string) {
//all, _ := cmd.Flags().GetBool("all")
dbPath, _ := cmd.Flags().GetString("db")
client, err := rpc.Receive(dbPath)
if err != nil {
Logger.Errorf("dialing: %s\n", err)
return
}
var names []string
vault := "root"
err = client.Call("Query.GetAllNames", &vault, &names)
err := rpcClient.Call("Query.GetAllNames", &vault, &names)
if err != nil {
Logger.Error(err)
@@ -56,19 +48,11 @@ var generateCmd = &cobra.Command{
Short: "Generate a Password",
Args: cobra.ExactArgs(1),
Run: func(cmd *cobra.Command, args []string) {
dbPath, _ := cmd.Flags().GetString("db")
client, err := rpc.Receive(dbPath)
if err != nil {
Logger.Errorf("dialing: %s\n", err)
return
}
serviceName := args[0]
var password *crypto.Password
np := rpc.VaultService{ Vault: "root", Service: serviceName }
err = client.Call("Query.Generate", &np, &password)
err := rpcClient.Call("Query.Generate", &np, &password)
if err != nil {
Logger.Error(err)
@@ -83,19 +67,11 @@ var showCmd = &cobra.Command{
Short: "show a Password",
Args: cobra.ExactArgs(1),
Run: func(cmd *cobra.Command, args []string) {
dbPath, _ := cmd.Flags().GetString("db")
client, err := rpc.Receive(dbPath)
if err != nil {
Logger.Errorf("dialing: %s\n", err)
return
}
serviceName := args[0]
var password *crypto.Password
np := rpc.VaultService{ Vault: "root", Service: serviceName }
err = client.Call("Query.Get", &np, &password)
err := rpcClient.Call("Query.Get", &np, &password)
if err != nil {
Logger.Error(err)
@@ -116,18 +92,10 @@ var addVaultCmd = &cobra.Command{
Short: "add a vault",
Args: cobra.ExactArgs(1),
Run: func(cmd *cobra.Command, args []string) {
dbPath, _ := cmd.Flags().GetString("db")
client, err := rpc.Receive(dbPath)
if err != nil {
Logger.Errorf("dialing: %s\n", err)
return
}
vault := args[0]
var placeholder int
err = client.Call("Query.AddVault", &vault, &placeholder)
err := rpcClient.Call("Query.AddVault", &vault, &placeholder)
if err != nil {
Logger.Error(err)
@@ -143,18 +111,10 @@ var deleteVaultCmd = &cobra.Command{
Short: "delete a vault",
Args: cobra.ExactArgs(1),
Run: func(cmd *cobra.Command, args []string) {
dbPath, _ := cmd.Flags().GetString("db")
client, err := rpc.Receive(dbPath)
if err != nil {
Logger.Errorf("dialing: %s\n", err)
return
}
vault := args[0]
var placeholder int
err = client.Call("Query.DeleteVault", &vault, &placeholder)
err := rpcClient.Call("Query.DeleteVault", &vault, &placeholder)
if err != nil {
Logger.Error(err)
@@ -169,16 +129,8 @@ var listVaultsCmd = &cobra.Command{
Use: "list",
Short: "list all vaults",
Run: func(cmd *cobra.Command, args []string) {
dbPath, _ := cmd.Flags().GetString("db")
client, err := rpc.Receive(dbPath)
if err != nil {
Logger.Errorf("dialing: %s\n", err)
return
}
var reply []string
err = client.Call("Query.ListVaults", 0, &reply)
err := rpcClient.Call("Query.ListVaults", 0, &reply)
if err != nil {
Logger.Error(err)
@@ -202,16 +154,14 @@ var infoCmd = &cobra.Command{
Use: "info",
Short: "print your own peerstring",
Run: func(cmd *cobra.Command, args []string) {
dbPath, _ := cmd.Flags().GetString("db")
client, err := rpc.Receive(dbPath)
var result *string
err := rpcClient.Call("Query.GetPeerString", 0, &result)
if err != nil {
Logger.Errorf("dialing: %s\n", err)
Logger.Error(err)
return
}
var result *string
err = client.Call("Query.GetPeerString", 0, &result)
Logger.Info(*result)
},
}
@@ -222,14 +172,6 @@ var addPeerCmd = &cobra.Command{
Short: "add a peer",
Args: cobra.RangeArgs(1, 2),
Run: func(cmd *cobra.Command, args []string) {
dbPath, _ := cmd.Flags().GetString("db")
client, err := rpc.Receive(dbPath)
if err != nil {
Logger.Errorf("dialing: %s\n", err)
return
}
var vault string
var peerString string
@@ -243,7 +185,7 @@ var addPeerCmd = &cobra.Command{
var success *bool
np := rpc.VaultPeer{ Vault: vault, Peer: peerString }
err = client.Call("Query.AddPeer", &np, &success)
err := rpcClient.Call("Query.AddPeer", &np, &success)
if err != nil {
Logger.Error(err)
@@ -263,14 +205,6 @@ var removePeerCmd = &cobra.Command{
Short: "remove a peer",
Args: cobra.RangeArgs(1, 2),
Run: func(cmd *cobra.Command, args []string) {
dbPath, _ := cmd.Flags().GetString("db")
client, err := rpc.Receive(dbPath)
if err != nil {
Logger.Errorf("dialing: %s\n", err)
return
}
var vault string
var peerString string
@@ -284,7 +218,7 @@ var removePeerCmd = &cobra.Command{
var success *bool
np := rpc.VaultPeer{ Vault: vault, Peer: peerString }
err = client.Call("Query.DeletePeer", &np, &success)
err := rpcClient.Call("Query.DeletePeer", &np, &success)
if err != nil {
Logger.Error(err)
@@ -304,14 +238,6 @@ var deleteCmd = &cobra.Command{
Short: "delete a Password",
Args: cobra.RangeArgs(1, 2),
Run: func(cmd *cobra.Command, args []string) {
dbPath, _ := cmd.Flags().GetString("db")
client, err := rpc.Receive(dbPath)
if err != nil {
Logger.Errorf("dialing: %s\n", err)
return
}
var vault string
var serviceName string
@@ -325,7 +251,7 @@ var deleteCmd = &cobra.Command{
var success *bool
np := rpc.VaultService{ Vault: vault, Service: serviceName }
err = client.Call("Query.Delete", &np, &success)
err := rpcClient.Call("Query.Delete", &np, &success)
if err != nil {
Logger.Error(err)
@@ -339,9 +265,9 @@ var deleteCmd = &cobra.Command{
},
}
func init() {
rootCmd.PersistentFlags().String("db", "", "db path")
rootCmd.PersistentFlags().StringVar(&dbPath, "db", "", "db path")
rootCmd.PersistentFlags().BoolVar(&debug, "debug", false, "enable debug mode")
rootCmd.MarkPersistentFlagRequired("db")
peerCmd.AddCommand(addPeerCmd)
@@ -361,7 +287,18 @@ func init() {
}
func main() {
InitLogger(false)
cobra.OnInitialize(func() {
var tmpClient *RPC.Client
tmpClient, err := rpc.Receive(dbPath)
rpcClient = tmpClient
if err != nil {
Logger.Fatalf("dialing: %s\n", err)
return
}
InitLogger(debug)
})
if err := rootCmd.Execute(); err != nil {
Logger.Error(err)
os.Exit(1)

View File

@@ -211,7 +211,7 @@ func CreateVault(ID string, storageHandler *StorageHandler) (*Vault, error) {
ID, //== topicName
func(ctx context.Context, id peer.ID, msg *pubsub.Message) bool {
if id == storageHandler.Host.ID() {
return false
return true
}
Logger.Debugf("PubSubmsg TOPIC: %s, PEER: %s\n", ID, id)