+_public_ int sd_bus_creds_get_connection_name(sd_bus_creds *c, const char **ret) {
+ assert_return(c, -EINVAL);
+ assert_return(ret, -EINVAL);
+
+ if (!(c->mask & SD_BUS_CREDS_CONNECTION_NAME))
+ return -ENODATA;
+
+ assert(c->conn_name);
+
+ if (!c->unescaped_conn_name) {
+ c->unescaped_conn_name = bus_label_unescape(c->conn_name);
+ if (!c->unescaped_conn_name)
+ return -ENOMEM;
+ }
+
+ *ret = c->unescaped_conn_name;
+ return 0;
+}
+