diff --git a/src/gb/gprs_ns2_fr.c b/src/gb/gprs_ns2_fr.c
index fc6a5c4..f1a5576 100644
--- a/src/gb/gprs_ns2_fr.c
+++ b/src/gb/gprs_ns2_fr.c
@@ -721,8 +721,8 @@
  *  \param[in] netif Network interface to bind to
  *  \param[in] fr_network
  *  \param[in] fr_role
- *  \param[out] result pointer to created bind
- *  \return 0 on success; negative on error */
+ *  \param[out] result pointer to the created bind or if a bind with the name exists return the bind.
+ *  \return 0 on success; negative on error. -EALREADY returned in case a bind with the name exists */
 int gprs_ns2_fr_bind(struct gprs_ns2_inst *nsi,
 		     const char *name,
 		     const char *netif,
@@ -738,8 +738,12 @@
 	if (strlen(netif) > IFNAMSIZ)
 		return -EINVAL;
 
-	if (gprs_ns2_bind_by_name(nsi, name))
+	bind = gprs_ns2_bind_by_name(nsi, name);
+	if (bind) {
+		if (result)
+			*result = bind;
 		return -EALREADY;
+	}
 
 	rc = ns2_bind_alloc(nsi, name, &bind);
 	if (rc < 0)
diff --git a/src/gb/gprs_ns2_frgre.c b/src/gb/gprs_ns2_frgre.c
index 88ef037..853375d 100644
--- a/src/gb/gprs_ns2_frgre.c
+++ b/src/gb/gprs_ns2_frgre.c
@@ -529,8 +529,8 @@
  *  \param[in] nsi NS instance in which to create the bind
  *  \param[in] local local address on which to bind
  *  \param[in] dscp DSCP/TOS bits to use for transmitted data on this bind
- *  \param[out] result pointer to created bind
- *  \return 0 on success; negative on error */
+ *  \param[out] result pointer to the created bind or if a bind with the name exists return the bind.
+ *  \return 0 on success; negative on error. -EALREADY returned in case a bind with the name exists */
 int gprs_ns2_frgre_bind(struct gprs_ns2_inst *nsi,
 			const char *name,
 			const struct osmo_sockaddr *local,
@@ -546,7 +546,8 @@
 
 	bind = gprs_ns2_bind_by_name(nsi, name);
 	if (bind) {
-		*result = bind;
+		if (result)
+			*result = bind;
 		return -EALREADY;
 	}
 
diff --git a/src/gb/gprs_ns2_udp.c b/src/gb/gprs_ns2_udp.c
index 9277f9a..e07f6d4 100644
--- a/src/gb/gprs_ns2_udp.c
+++ b/src/gb/gprs_ns2_udp.c
@@ -303,8 +303,8 @@
  *  \param[in] nsi NS Instance in which to create the NSVC
  *  \param[in] local the local address to bind to
  *  \param[in] dscp the DSCP/TOS bits used for transmitted data
- *  \param[out] result if set, returns the bind object
- *  \return 0 on success; negative in case of error */
+ *  \param[out] result pointer to the created bind or if a bind with the name exists return the bind.
+ *  \return 0 on success; negative on error. -EALREADY returned in case a bind with the name exists */
 int gprs_ns2_ip_bind(struct gprs_ns2_inst *nsi,
 		     const char *name,
 		     const struct osmo_sockaddr *local,
@@ -320,7 +320,8 @@
 
 	bind = gprs_ns2_ip_bind_by_sockaddr(nsi, local);
 	if (bind) {
-		*result = bind;
+		if (result)
+			*result = bind;
 		return -EBUSY;
 	}
 
