# Libcanard listing active CanardRxSubscription

**URL:** <https://forum.opencyphal.org/t/libcanard-listing-active-canardrxsubscription/1266>\
**Category:** Libcanard\
**Created:** [May 20, 2021, 9:14am UTC](https://forum.opencyphal.org/t/libcanard-listing-active-canardrxsubscription/1266 "2021-05-20T09:14:08Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![PetervdPerk](https://forum.opencyphal.org/letter_avatar_proxy/v4/letter/p/bbe5ce/32.png) [@PetervdPerk](https://forum.opencyphal.org/u/PetervdPerk)\
**Post date:** [May 20, 2021, 9:14am UTC](https://forum.opencyphal.org/t/libcanard-listing-active-canardrxsubscription/1266/1 "2021-05-20T09:14:08Z")

</div>

Currently you’ve to keep a seperate list of the active CanardRxSubscription to be able to print information e.g. active portIds of all active subscribers. Although technically this information is already available in libcanard.

Would it be something to expose the list of active CanardRxSubscriptions from libcanard so we could easily print status information?

---

<div class="post-metadata">

**Author:** ![pavel.kirienko](https://forum.opencyphal.org/user_avatar/forum.opencyphal.org/pavel.kirienko/32/9_2.png) [@pavel.kirienko](https://forum.opencyphal.org/u/pavel.kirienko)\
**Post date:** [May 20, 2021, 9:16am UTC](https://forum.opencyphal.org/t/libcanard-listing-active-canardrxsubscription/1266/2 "2021-05-20T09:16:52Z")

</div>

This information is already exposed, although the API might be considered a bit quirky:

> <https://github.com/UAVCAN/demos/blob/bfdbae036bab4cd389f567127fbd7640021c7e28/ds015_servo/src/main.c#L455-L460>

Should we improve it?

---

<div class="post-metadata">

**Author:** ![PetervdPerk](https://forum.opencyphal.org/letter_avatar_proxy/v4/letter/p/bbe5ce/32.png) [@PetervdPerk](https://forum.opencyphal.org/u/PetervdPerk)\
**Post date:** [May 20, 2021, 9:22am UTC](https://forum.opencyphal.org/t/libcanard-listing-active-canardrxsubscription/1266/3 "2021-05-20T09:22:16Z")

</div>

> <https://github.com/UAVCAN/libcanard/blob/master/libcanard/canard.h#L350>

Well currently it’s stated it’s for internal use only, thus you expect the API can be unstable.  
Maybe adding an access function would be nice and futureproof.

---

<div class="post-metadata">

**Author:** ![pavel.kirienko](https://forum.opencyphal.org/user_avatar/forum.opencyphal.org/pavel.kirienko/32/9_2.png) [@pavel.kirienko](https://forum.opencyphal.org/u/pavel.kirienko)\
**Post date:** [May 20, 2021, 9:24am UTC](https://forum.opencyphal.org/t/libcanard-listing-active-canardrxsubscription/1266/4 "2021-05-20T09:24:40Z")

</div>

> [@PetervdPerk](#):
>
> Maybe adding an access function would be nice and futureproof.

How about we just remove the leading underscore and update the docs to state “do not modify this” instead of “internal use only”? Adding an extra accessor would go against the spirit of libcanard, I think.

---

<div class="post-metadata">

**Author:** ![PetervdPerk](https://forum.opencyphal.org/letter_avatar_proxy/v4/letter/p/bbe5ce/32.png) [@PetervdPerk](https://forum.opencyphal.org/u/PetervdPerk)\
**Post date:** [May 20, 2021, 9:25am UTC](https://forum.opencyphal.org/t/libcanard-listing-active-canardrxsubscription/1266/5 "2021-05-20T09:25:39Z")

</div>

Yes that will do 👍

---

<div class="post-metadata">

**Author:** ![pavel.kirienko](https://forum.opencyphal.org/user_avatar/forum.opencyphal.org/pavel.kirienko/32/9_2.png) [@pavel.kirienko](https://forum.opencyphal.org/u/pavel.kirienko)\
**Post date:** [May 20, 2021, 9:33am UTC](https://forum.opencyphal.org/t/libcanard-listing-active-canardrxsubscription/1266/6 "2021-05-20T09:33:47Z")

</div>

I won’t be able to work on this soon, but a pull request would be accepted!
