Add AWDL calls to exposed API, handle proto traffic first

This commit is contained in:
Neil Alexander 2019-01-04 17:41:03 +00:00
parent 3878197a59
commit 5a36b4723a
No known key found for this signature in database
GPG key ID: A02A2019A2BB0944
2 changed files with 32 additions and 0 deletions

View file

@ -4,6 +4,7 @@ package yggdrasil
import (
"encoding/json"
"errors"
"log"
"os"
"regexp"
@ -100,3 +101,19 @@ func (c *Core) AWDLCreateInterface(boxPubKey []byte, sigPubKey []byte, name stri
copy(sig[:crypto.SigPubKeyLen], sigPubKey[:])
c.awdl.create(&box, &sig, name)
}
func (c *Core) AWDLRecvPacket(identity string) ([]byte, error) {
if intf := c.awdl.getInterface(identity); intf != nil {
return <-intf.recv, nil
}
return nil, errors.New("identity not known: " + identity)
}
func (c *Core) AWDLSendPacket(identity string, buf []byte) error {
packet := append(util.GetBytes(), buf[:]...)
if intf := c.awdl.getInterface(identity); intf != nil {
intf.send <- packet
return nil
}
return errors.New("identity not known: " + identity)
}