Lines Matching defs:addr
164 const char *ceph_pr_addr(const struct ceph_entity_addr *addr)
168 struct sockaddr_storage ss = addr->in_addr; /* align */
178 le32_to_cpu(addr->type), &in4->sin_addr,
184 le32_to_cpu(addr->type), &in6->sin6_addr,
200 memcpy(&msgr->my_enc_addr, &msgr->inst.addr,
599 struct ceph_entity_addr *addr)
602 dout("con_open %p %s\n", con, ceph_pr_addr(addr));
610 memcpy(&con->peer_addr, addr, sizeof(*addr));
1177 bool ceph_addr_is_blank(const struct ceph_entity_addr *addr)
1179 struct sockaddr_storage ss = addr->in_addr; /* align */
1194 int ceph_addr_port(const struct ceph_entity_addr *addr)
1196 switch (get_unaligned(&addr->in_addr.ss_family)) {
1198 return ntohs(get_unaligned(&((struct sockaddr_in *)&addr->in_addr)->sin_port));
1200 return ntohs(get_unaligned(&((struct sockaddr_in6 *)&addr->in_addr)->sin6_port));
1205 void ceph_addr_set_port(struct ceph_entity_addr *addr, int p)
1207 switch (get_unaligned(&addr->in_addr.ss_family)) {
1209 put_unaligned(htons(p), &((struct sockaddr_in *)&addr->in_addr)->sin_port);
1212 put_unaligned(htons(p), &((struct sockaddr_in6 *)&addr->in_addr)->sin6_port);
1220 static int ceph_pton(const char *str, size_t len, struct ceph_entity_addr *addr,
1223 memset(&addr->in_addr, 0, sizeof(addr->in_addr));
1225 if (in4_pton(str, len, (u8 *)&((struct sockaddr_in *)&addr->in_addr)->sin_addr.s_addr, delim, ipend)) {
1226 put_unaligned(AF_INET, &addr->in_addr.ss_family);
1230 if (in6_pton(str, len, (u8 *)&((struct sockaddr_in6 *)&addr->in_addr)->sin6_addr.s6_addr, delim, ipend)) {
1231 put_unaligned(AF_INET6, &addr->in_addr.ss_family);
1243 struct ceph_entity_addr *addr, char delim, const char **ipend)
1273 ret = ceph_pton(ip_addr, ip_len, addr, -1, NULL);
1282 ret, ret ? "failed" : ceph_pr_addr(addr));
1288 struct ceph_entity_addr *addr, char delim, const char **ipend)
1299 struct ceph_entity_addr *addr, char delim, const char **ipend)
1303 ret = ceph_pton(name, namelen, addr, delim, ipend);
1305 ret = ceph_dns_resolve_name(name, namelen, addr, delim, ipend);
1311 * Parse an ip[:port] list into an addr array. Use the default
1315 struct ceph_entity_addr *addr,
1332 ret = ceph_parse_server_name(p, end - p, &addr[i], cur_delim,
1364 ceph_addr_set_port(&addr[i], port);
1373 addr[i].type = CEPH_ENTITY_ADDR_TYPE_LEGACY;
1374 addr[i].nonce = 0;
1376 dout("%s got %s\n", __func__, ceph_pr_addr(&addr[i]));
1661 u32 nonce = le32_to_cpu(msgr->inst.addr.nonce) + 1000000;
1662 msgr->inst.addr.nonce = cpu_to_le32(nonce);
1675 memcpy(&msgr->inst.addr.in_addr, &myaddr->in_addr,
1676 sizeof(msgr->inst.addr.in_addr));
1677 ceph_addr_set_port(&msgr->inst.addr, 0);
1684 msgr->inst.addr.type = CEPH_ENTITY_ADDR_TYPE_ANY;
1688 get_random_bytes(&msgr->inst.addr.nonce,
1689 sizeof(msgr->inst.addr.nonce));
1690 } while (!msgr->inst.addr.nonce);