begin adding device to device communication
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
@ -21,6 +21,7 @@ type Identity struct {
|
||||
RootKp meowlib.KeyPair `json:"id_kp,omitempty"`
|
||||
Status string `json:"status,omitempty"`
|
||||
Peers PeerList `json:"peers,omitempty"`
|
||||
Devices PeerList `json:"devices,omitempty"`
|
||||
HiddenPeers [][]byte `json:"hiddend_peers,omitempty"`
|
||||
Device meowlib.KeyPair `json:"device,omitempty"`
|
||||
KnownServers ServerList `json:"known_servers,omitempty"`
|
||||
@ -207,9 +208,15 @@ func (id *Identity) generateRandomHiddenStuff() {
|
||||
}
|
||||
}
|
||||
|
||||
type BackgroundJob struct {
|
||||
RootPublic string `json:"root_public,omitempty"`
|
||||
Device meowlib.KeyPair `json:"device,omitempty"`
|
||||
Jobs []*RequestsJob `json:"jobs,omitempty"`
|
||||
}
|
||||
|
||||
type RequestsJob struct {
|
||||
server Server `json:"server,omitempty"`
|
||||
lookupKeys []meowlib.KeyPair `json:"lookup_keys,omitempty"`
|
||||
Server Server `json:"server,omitempty"`
|
||||
LookupKeys []meowlib.KeyPair `json:"lookup_keys,omitempty"`
|
||||
}
|
||||
|
||||
func (id *Identity) GetRequestJobs() []*RequestsJob {
|
||||
@ -218,19 +225,19 @@ func (id *Identity) GetRequestJobs() []*RequestsJob {
|
||||
// build a server map
|
||||
for _, server := range id.MessageServers.Servers {
|
||||
var rj RequestsJob
|
||||
rj.server = server
|
||||
rj.Server = server
|
||||
srvs[server.ServerData.GetUid()] = &rj
|
||||
}
|
||||
// add ids to the map
|
||||
for _, peer := range id.Peers {
|
||||
for _, server := range peer.MyPullServers {
|
||||
srvs[server.GetUid()].lookupKeys = append(srvs[server.GetUid()].lookupKeys, peer.MyLookupKp)
|
||||
srvs[server.GetUid()].LookupKeys = append(srvs[server.GetUid()].LookupKeys, peer.MyLookupKp)
|
||||
}
|
||||
}
|
||||
// add hidden peers
|
||||
for _, peer := range id.unlockedHiddenPeers {
|
||||
for _, server := range peer.MyPullServers {
|
||||
srvs[server.GetUid()].lookupKeys = append(srvs[server.GetUid()].lookupKeys, peer.MyLookupKp)
|
||||
srvs[server.GetUid()].LookupKeys = append(srvs[server.GetUid()].LookupKeys, peer.MyLookupKp)
|
||||
}
|
||||
}
|
||||
// todo add garbage
|
||||
@ -244,9 +251,12 @@ func (id *Identity) GetRequestJobs() []*RequestsJob {
|
||||
return list
|
||||
}
|
||||
|
||||
func (id *Identity) SaveRequestJobs() error {
|
||||
jobs := id.GetRequestJobs()
|
||||
jsonjobs, err := json.Marshal(jobs)
|
||||
func (id *Identity) SaveBackgroundJob() error {
|
||||
var bj BackgroundJob
|
||||
bj.Jobs = id.GetRequestJobs()
|
||||
bj.RootPublic = id.RootKp.Public
|
||||
bj.Device = id.Device
|
||||
jsonjobs, err := json.Marshal(bj)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
Reference in New Issue
Block a user