MCPcopy Create free account
hub / github.com/ElementsProject/lightning / towire_wireaddr_internal

Function towire_wireaddr_internal

common/wireaddr.c:91–124  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

89}
90
91void towire_wireaddr_internal(u8 **pptr, const struct wireaddr_internal *addr)
92{
93 towire_u8(pptr, addr->itype);
94 switch (addr->itype) {
95 case ADDR_INTERNAL_SOCKNAME:
96 towire_u8_array(pptr, (const u8 *)addr->u.sockname,
97 sizeof(addr->u.sockname));
98 return;
99 case ADDR_INTERNAL_AUTOTOR:
100 towire_wireaddr(pptr, &addr->u.torservice.address);
101 towire_u16(pptr, addr->u.torservice.port);
102 return;
103 case ADDR_INTERNAL_STATICTOR:
104 towire_wireaddr(pptr, &addr->u.torservice.address);
105 towire_u8_array(pptr, (const u8 *)addr->u.torservice.blob,
106 sizeof(addr->u.torservice.blob));
107 towire_u16(pptr, addr->u.torservice.port);
108 return;
109 case ADDR_INTERNAL_ALLPROTO:
110 towire_bool(pptr, addr->u.allproto.is_websocket);
111 towire_u16(pptr, addr->u.allproto.port);
112 return;
113 case ADDR_INTERNAL_WIREADDR:
114 towire_bool(pptr, addr->u.wireaddr.is_websocket);
115 towire_wireaddr(pptr, &addr->u.wireaddr.wireaddr);
116 return;
117 case ADDR_INTERNAL_FORPROXY:
118 towire_u8_array(pptr, (const u8 *)addr->u.unresolved.name,
119 sizeof(addr->u.unresolved.name));
120 towire_u16(pptr, addr->u.unresolved.port);
121 return;
122 }
123 abort();
124}
125
126bool fromwire_wireaddr_internal(const u8 **cursor, size_t *max,
127 struct wireaddr_internal *addr)

Callers

nothing calls this directly

Calls 6

towire_wireaddrFunction · 0.85
abortFunction · 0.85
towire_u8Function · 0.50
towire_u8_arrayFunction · 0.50
towire_u16Function · 0.50
towire_boolFunction · 0.50

Tested by

no test coverage detected