atsign-foundation / noports

Connect to any device with no external listening ports open
https://noports.com
BSD 3-Clause "New" or "Revised" License
270 stars 15 forks source link

at_activate in C #1325

Open XavierChanth opened 5 months ago

XavierChanth commented 5 months ago

Dependent on atsign-foundation/at_c#176

### Tasks
- [ ] https://github.com/atsign-foundation/at_c/issues/176
- [ ] atsign-foundation/at_c#74 
JeremyTubongbanua commented 5 months ago

Where would this project live @XavierChanth ?

Would it be in examples/ ?

cpswan commented 5 months ago

I'm guessing here, as @XavierChanth hasn't explained why...

at_activate is a crucial component of the customer journey, and if their device needs C sshnpd then it likely also needs a smaller and more portable at_activate.

So not an example really, but also not part of the SDK. Maybe we need a utils directory, or maybe we need to put it in the noports repo alongside the daemon.

JeremyTubongbanua commented 5 months ago

One thing we could also consider is making an entirely new at_tools repo made in C, like at_tools_c that would house generic Atsign tools like repl, at_talk, atcat & attee (https://github.com/atsign-foundation/at_c/issues/222), and also our at_activate.

repl and at_talk currently live in our examples/ directory.

XavierChanth commented 5 months ago

The primary object for creating at_activate is to make it easier to do APKAM / atSign onboarding with the C daemon. I am hesitant to put it in examples, but maybe a bin/ directory at the root of this repo. repl & at_talk can be moved into this new directory.

cconstab commented 2 months ago

This is now something that needs to float to the top of the ToDo's.. It will enable a number of customers to automate sshnpd and its keys on IoT devices without logging into the hardware.

MVP at_activate with APKAM creation of atKeys

srieteja commented 2 months ago

I will take this up this sprint @cconstab

cconstab commented 2 months ago

APKAM functionality is the target.. TY

JeremyTubongbanua commented 2 months ago

We would like to move this ticket to NoPorts. We would like to have at_activate be within the NoPorts repo to make things simple for our CI when we package NoPorts zips and binaries

Would it be possible to change this ticket's repo? I don't know how to do that

srieteja commented 1 month ago

Carrying forward to PR97 to implement key/keypair generation and exchange these keys with the at_server.

srieteja commented 1 month ago

@JeremyTubongbanua, @XavierChanth and I have completed the implementation of dependencies required to implement at_activate. But there is one bug which was interrupting my progress (MbedTLS read returns a connection timed out err), @JeremyTubongbanua is going to take a look at this bug today as I'm not very familiar with MbedTLS and it's eating up a lot of my time.

In the meantime, I have started working on at_activate itself. Current ETA to complete this would be Tuesday (at the latest).

srieteja commented 3 weeks ago

Blocked by https://github.com/atsign-foundation/at_c/issues/426

srieteja commented 3 weeks ago

https://github.com/atsign-foundation/at_c/issues/426 has been resolved. See ticket for explanation.

cconstab commented 2 weeks ago

Hows this ticket progressing.. looks like it is close but hard to tell .. Itching to test :-)

srieteja commented 2 weeks ago

All the implementation is complete @cconstab. Trying to resolve all the obvious bugs. You should have a version to test in a day or two.