Build fixes

This commit is contained in:
Adam Ierymenko 2019-09-30 09:48:44 -07:00
parent b0d222768a
commit f680924585
No known key found for this signature in database
GPG Key ID: C8877CF2D7A5D7F3
5 changed files with 18 additions and 17 deletions

View File

@ -723,7 +723,7 @@ extern "C" int ZT_GoTap_removeRoute(ZT_GoTap *tap,int targetAf,const void *targe
/****************************************************************************/ /****************************************************************************/
int ZT_GoLocator_makeSecureDNSName(char *name,unsigned int nameBufSize,uint8_t *privateKey,unsigned int privateKeyBufSize) extern "C" int ZT_GoLocator_makeSecureDNSName(char *name,unsigned int nameBufSize,uint8_t *privateKey,unsigned int privateKeyBufSize)
{ {
if ((privateKeyBufSize < ZT_ECC384_PRIVATE_KEY_SIZE)||(nameBufSize < 256)) if ((privateKeyBufSize < ZT_ECC384_PRIVATE_KEY_SIZE)||(nameBufSize < 256))
return -1; return -1;
@ -736,7 +736,7 @@ int ZT_GoLocator_makeSecureDNSName(char *name,unsigned int nameBufSize,uint8_t *
return ZT_ECC384_PRIVATE_KEY_SIZE; return ZT_ECC384_PRIVATE_KEY_SIZE;
} }
int ZT_GoLocator_makeLocator( extern "C" int ZT_GoLocator_makeLocator(
uint8_t *buf, uint8_t *buf,
unsigned int bufSize, unsigned int bufSize,
int64_t ts, int64_t ts,
@ -775,7 +775,7 @@ int ZT_GoLocator_makeLocator(
return s; return s;
} }
int ZT_GoLocator_decodeLocator(const uint8_t *locatorBytes,unsigned int locatorSize,struct ZT_GoLocator_Info *info) extern "C" int ZT_GoLocator_decodeLocator(const uint8_t *locatorBytes,unsigned int locatorSize,struct ZT_GoLocator_Info *info)
{ {
Locator loc; Locator loc;
if (!loc.deserialize(locatorBytes,locatorSize)) if (!loc.deserialize(locatorBytes,locatorSize))

View File

@ -114,6 +114,7 @@ int ZT_GoLocator_makeSecureDNSName(char name[256],unsigned int nameBufSize,uint8
int ZT_GoLocator_makeLocator( int ZT_GoLocator_makeLocator(
uint8_t *buf, uint8_t *buf,
unsigned int bufSize, unsigned int bufSize,
int64_t ts,
const char *id, const char *id,
const struct sockaddr_storage *physicalAddresses, const struct sockaddr_storage *physicalAddresses,
unsigned int physicalAddressCount, unsigned int physicalAddressCount,

View File

@ -90,14 +90,14 @@ func NewLocator(id *Identity, virtualAddresses []*Identity, physicalAddresses []
var buf [65536]byte var buf [65536]byte
var pPhy *C.struct_sockaddr_storage var pPhy *C.struct_sockaddr_storage
var pVirt *C.char var pVirt **C.char
if len(phy) > 0 { if len(phy) > 0 {
pPhy = &phy[0] pPhy = &phy[0]
} }
if len(virt) > 0 { if len(virt) > 0 {
pVirt = &virt[0] pVirt = &virt[0]
} }
locSize := C.ZT_GoLocator_makeLocator((*C.uint8_t)(unsafe.Pointer(&buf[0])), 65536, idCstr, pPhy, C.uint(len(phy)), pVirt, C.uint(len(virt))) locSize := C.ZT_GoLocator_makeLocator((*C.uint8_t)(unsafe.Pointer(&buf[0])), 65536, C.int64_t(TimeMs()), idCstr, pPhy, C.uint(len(phy)), pVirt, C.uint(len(virt)))
if locSize <= 0 { if locSize <= 0 {
return nil, ErrInvalidParameter return nil, ErrInvalidParameter
} }
@ -128,7 +128,7 @@ func NewLocatorFromBytes(b []byte) (*Locator, error) {
var loc Locator var loc Locator
var err error var err error
loc.Identity, err = NewIdentityFromString(C.GoString(info.id)) loc.Identity, err = NewIdentityFromString(C.GoString(&info.id[0]))
if err != nil { if err != nil {
return nil, err return nil, err
} }
@ -139,7 +139,7 @@ func NewLocatorFromBytes(b []byte) (*Locator, error) {
} }
} }
for i := 0; i < int(info.virtCount); i++ { for i := 0; i < int(info.virtCount); i++ {
id, err := NewIdentityFromString(C.GoString(info.virt[i])) id, err := NewIdentityFromString(C.GoString(&info.virt[i][0]))
if err == nil { if err == nil {
loc.Virtual = append(loc.Virtual, id) loc.Virtual = append(loc.Virtual, id)
} }

View File

@ -203,7 +203,7 @@ func (n *Network) LocalSettings() NetworkLocalSettings {
// MulticastSubscribe subscribes to a multicast group // MulticastSubscribe subscribes to a multicast group
func (n *Network) MulticastSubscribe(mg *MulticastGroup) { func (n *Network) MulticastSubscribe(mg *MulticastGroup) {
n.node.log.Printf("%.16x joined multicast group %s", mg.String()) n.node.log.Printf("%.16x joined multicast group %s", uint64(n.id), mg.String())
k := mg.key() k := mg.key()
n.multicastSubscriptionsLock.Lock() n.multicastSubscriptionsLock.Lock()
if _, have := n.multicastSubscriptions[k]; have { if _, have := n.multicastSubscriptions[k]; have {
@ -217,7 +217,7 @@ func (n *Network) MulticastSubscribe(mg *MulticastGroup) {
// MulticastUnsubscribe removes a subscription to a multicast group // MulticastUnsubscribe removes a subscription to a multicast group
func (n *Network) MulticastUnsubscribe(mg *MulticastGroup) { func (n *Network) MulticastUnsubscribe(mg *MulticastGroup) {
n.node.log.Printf("%.16x left multicast group %s", mg.String()) n.node.log.Printf("%.16x left multicast group %s", uint64(n.id), mg.String())
n.multicastSubscriptionsLock.Lock() n.multicastSubscriptionsLock.Lock()
delete(n.multicastSubscriptions, mg.key()) delete(n.multicastSubscriptions, mg.key())
n.multicastSubscriptionsLock.Unlock() n.multicastSubscriptionsLock.Unlock()
@ -311,7 +311,7 @@ func (n *Network) updateConfig(nc *NetworkConfig, ls *NetworkLocalSettings) {
k := ipNetToKey(&ip) k := ipNetToKey(&ip)
wantAssignedIPs[k] = true wantAssignedIPs[k] = true
if _, have := haveAssignedIPs[k]; !have { if _, have := haveAssignedIPs[k]; !have {
n.node.log.Printf("%.16x adding managed IP %s", n.ID, ip.String()) n.node.log.Printf("%.16x adding managed IP %s", uint64(n.id), ip.String())
n.tap.AddIP(&ip) n.tap.AddIP(&ip)
} }
} }
@ -319,7 +319,7 @@ func (n *Network) updateConfig(nc *NetworkConfig, ls *NetworkLocalSettings) {
} }
for k, ip := range haveAssignedIPs { for k, ip := range haveAssignedIPs {
if _, want := wantAssignedIPs[k]; !want { if _, want := wantAssignedIPs[k]; !want {
n.node.log.Printf("%.16x removing managed IP %s", n.ID, ip.String()) n.node.log.Printf("%.16x removing managed IP %s", uint64(n.id), ip.String())
n.tap.RemoveIP(ip) n.tap.RemoveIP(ip)
} }
} }
@ -340,7 +340,7 @@ func (n *Network) updateConfig(nc *NetworkConfig, ls *NetworkLocalSettings) {
k := r.key() k := r.key()
wantManagedRoutes[k] = true wantManagedRoutes[k] = true
if _, have := haveManagedRoutes[k]; !have { if _, have := haveManagedRoutes[k]; !have {
n.node.log.Printf("%.16x adding managed route %s", n.ID, r.String()) n.node.log.Printf("%.16x adding managed route %s", uint64(n.id), r.String())
n.tap.AddRoute(&r) n.tap.AddRoute(&r)
} }
} }
@ -348,7 +348,7 @@ func (n *Network) updateConfig(nc *NetworkConfig, ls *NetworkLocalSettings) {
} }
for k, r := range haveManagedRoutes { for k, r := range haveManagedRoutes {
if _, want := wantManagedRoutes[k]; !want { if _, want := wantManagedRoutes[k]; !want {
n.node.log.Printf("%.16x removing managed route %s", n.ID, r.String()) n.node.log.Printf("%.16x removing managed route %s", uint64(n.id), r.String())
n.tap.RemoveRoute(r) n.tap.RemoveRoute(r)
} }
} }

View File

@ -488,7 +488,7 @@ func (n *Node) Join(nwid NetworkID, settings *NetworkLocalSettings, tap Tap) (*N
} }
ntap := C.ZT_GoNode_join(n.gn, C.uint64_t(nwid)) ntap := C.ZT_GoNode_join(n.gn, C.uint64_t(nwid))
if ntap == nil { if ntap == nil {
n.log.Printf("join network %.16x failed: tap device failed to initialize (check drivers / kernel modules)") n.log.Printf("join network %.16x failed: tap device failed to initialize (check drivers / kernel modules)", uint64(nwid))
return nil, ErrTapInitFailed return nil, ErrTapInitFailed
} }
@ -558,7 +558,7 @@ func (n *Node) Roots() []*Root {
} }
} }
roots = append(roots, &Root{ roots = append(roots, &Root{
Name: C.GoString(root.dnsName), Name: C.GoString(root.name),
Identity: id, Identity: id,
Addresses: addrs, Addresses: addrs,
Preferred: (root.preferred != 0), Preferred: (root.preferred != 0),
@ -592,7 +592,7 @@ func (n *Node) SetRoot(name string, locator *Locator) error {
} }
cn := C.CString(name) cn := C.CString(name)
defer C.free(unsafe.Pointer(cn)) defer C.free(unsafe.Pointer(cn))
if C.ZT_Node_setRoot(n.zn, cn, lbp, C.uint(len(lb))) != 0 { if C.ZT_Node_setRoot(unsafe.Pointer(n.zn), cn, lbp, C.uint(len(lb))) != 0 {
return ErrInternal return ErrInternal
} }
return nil return nil
@ -603,7 +603,7 @@ func (n *Node) SetRoot(name string, locator *Locator) error {
func (n *Node) RemoveRoot(name string) { func (n *Node) RemoveRoot(name string) {
cn := C.CString(name) cn := C.CString(name)
defer C.free(unsafe.Pointer(cn)) defer C.free(unsafe.Pointer(cn))
C.ZT_Node_removeRoot(n.zn, cn) C.ZT_Node_removeRoot(unsafe.Pointer(n.zn), cn)
return return
} }