return 0;
return 1;
}
+
+bool auth_proxy_parse_redirect(const char *target,
+ const char **destuser_r,
+ const char **host_r, struct ip_addr *ip_r,
+ in_port_t *port_r)
+{
+ const char *p;
+
+ p = strrchr(target, '@');
+ if (p == NULL)
+ *destuser_r = NULL;
+ else {
+ *destuser_r = t_strdup_until(target, p);
+ target = p+1;
+ }
+ if (net_str2hostport(target, 0, host_r, port_r) < 0)
+ return FALSE;
+ if (net_addr2ip(*host_r, ip_r) < 0)
+ return FALSE;
+ return TRUE;
+}
const char *key, const char *value,
const char **error_r);
+/* Parse [user@]ip[:port] string. Note that host must currently always be IP. */
+bool auth_proxy_parse_redirect(const char *target,
+ const char **destuser_r,
+ const char **host_r, struct ip_addr *ip_r,
+ in_port_t *port_r);
+
#endif