# Differences between uplink and uplinkc

**URL:** <https://forum.storj.io/t/differences-between-uplink-and-uplinkc/1921>\
**Category:** DCS\
**Created:** [September 25, 2019, 11:16am UTC](https://forum.storj.io/t/differences-between-uplink-and-uplinkc/1921 "2019-09-25T11:16:51Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![TopperDEL](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/topperdel/32/451_2.png) [@TopperDEL](https://forum.storj.io/u/TopperDEL)\
**Post date:** [September 25, 2019, 11:16am UTC](https://forum.storj.io/t/differences-between-uplink-and-uplinkc/1921/1 "2019-09-25T11:16:51Z")

</div>

Hi,

What is the difference between Uplink and Uplinkc within the storj-GitHub-repo? Who is in charge keeping both in sync? I saw that e.g. the UplinkConfig differs between both. The PartnerID for example does not yet exist within uplinkc.

Kind regards,

TopperDEL

---

<div class="post-metadata">

**Author:** ![TopperDEL](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/topperdel/32/451_2.png) [@TopperDEL](https://forum.storj.io/u/TopperDEL)\
**Post date:** [October 2, 2019, 12:22pm UTC](https://forum.storj.io/t/differences-between-uplink-and-uplinkc/1921/2 "2019-10-02T12:22:23Z")

</div>

@bryanchriswhite ^^ Might you answer that Question?

---

<div class="post-metadata">

**Author:** ![TopperDEL](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/topperdel/32/451_2.png) [@TopperDEL](https://forum.storj.io/u/TopperDEL)\
**Post date:** [October 22, 2019, 2:37pm UTC](https://forum.storj.io/t/differences-between-uplink-and-uplinkc/1921/3 "2019-10-22T14:37:41Z")

</div>

Would love to get an answer on this one. 🙂

---

<div class="post-metadata">

**Author:** ![jtolio](https://storj.bcdn.literatehosting.com/letter_avatar/jtolio/32/5_5575768a8748004e209b776fc1b2916d.png) [@jtolio](https://forum.storj.io/u/jtolio)\
**Post date:** [October 24, 2019, 12:33am UTC](https://forum.storj.io/t/differences-between-uplink-and-uplinkc/1921/4 "2019-10-24T00:33:35Z")

</div>

Hey TopperDEL!

[storj.io/storj/lib/uplink](http://storj.io/storj/lib/uplink) is the primary library, and [storj.io/storj/lib/uplinkc](http://storj.io/storj/lib/uplinkc) is simply the shim library we use to export [storj.io/storj/lib/uplink](http://storj.io/storj/lib/uplink) to C (just like [storj.io/storj/lib/uplink-gomobile](http://storj.io/storj/lib/uplink-gomobile) is how we expose it to Android and iOS).

We agree uplinkc is lagging behind in functionality. We’ve been working hard on other aspects of the storage platform (performance, availability, reliability, etc), but this currently is an area without a team assigned. If someone from the community wanted to take the effort of updating uplinkc to be more inline with uplink proper, that’d be fantastic, and that might even be eligible for a STORJ bounty! Otherwise, I can’t commit for sure but a team will probably be assigned after our next major milestone (Pioneer 2).

Sorry for the delay on this and hope that helps!

---

<div class="post-metadata">

**Author:** ![TopperDEL](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/topperdel/32/451_2.png) [@TopperDEL](https://forum.storj.io/u/TopperDEL)\
**Post date:** [October 24, 2019, 6:40am UTC](https://forum.storj.io/t/differences-between-uplink-and-uplinkc/1921/5 "2019-10-24T06:40:27Z")

</div>

Thanks JT for clarification!

I mainly wanted to know what the plans are. I do understand that other Topics are of higher priority currently.  
I will have a look if I can add the features I’m missing with a PR once I find the time to. It’s mainly the macaroon-stuff - and I’m not sure if I really know how to do it. But let’s see.

Thank you!

---

<div class="post-metadata">

**Author:** ![bryanchriswhite](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/bryanchriswhite/32/60_2.png) [@bryanchriswhite](https://forum.storj.io/u/bryanchriswhite)\
**Post date:** [October 24, 2019, 8:04am UTC](https://forum.storj.io/t/differences-between-uplink-and-uplinkc/1921/6 "2019-10-24T08:04:40Z")

</div>

@TopperDEL my apologies for the ridiculous delay, I need to figure out how to set-up notifications for the forum.

I started a bit on catching uplinkc up on my own time but there’s a bit of work still to do: [https://github.com/storj/storj/compare/bryan/uplinkc?expand=1](https://github.com/storj/storj/compare/bryan/uplinkc?expand=1).

---

<div class="post-metadata">

**Author:** ![TopperDEL](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/topperdel/32/451_2.png) [@TopperDEL](https://forum.storj.io/u/TopperDEL)\
**Post date:** [October 24, 2019, 8:23am UTC](https://forum.storj.io/t/differences-between-uplink-and-uplinkc/1921/7 "2019-10-24T08:23:45Z")

</div>

No problem as long as it doe not get lost completely.

Your branch is a very good start and seems to include most of the macaroon-stuff I’m not familiar with but would need for my app.  
What are your plans?

For me I see two Problems: 1. I don’t know exactly where they differ and it’s hard to follow 2. I’m no go-programmer and find it hard to do the mapping between both libraries.  
Adding something like the partner-id to some struct shouldn’t be a big deal and this is where I might help out a bit.

---

<div class="post-metadata">

**Author:** ![TopperDEL](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/topperdel/32/451_2.png) [@TopperDEL](https://forum.storj.io/u/TopperDEL)\
**Post date:** [November 8, 2019, 1:15pm UTC](https://forum.storj.io/t/differences-between-uplink-and-uplinkc/1921/8 "2019-11-08T13:15:13Z")

</div>

This PR tries to fix the main gap between Uplink and uplinkc from my Point of view:

> <https://github.com/storj/storj/pull/3417>

The following PR catches-up some UplinkConfig-Parameters:

> <https://github.com/storj/storj/pull/3526>

Closing this thread and handle over to GitHub.
