Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

To Do List #10

Open
26 of 46 tasks
AdySan opened this issue Jan 2, 2017 · 0 comments
Open
26 of 46 tasks

To Do List #10

AdySan opened this issue Jan 2, 2017 · 0 comments
Assignees

Comments

@AdySan
Copy link
Collaborator

AdySan commented Jan 2, 2017

This issue is intended is a working to do list. It will probably remain open during the life of this project.

To do

  • set clockspeed to 160MHz at crypto moments
  • maybe make IP based on link local addresses or
    remove the default gateway from the IP stack => security is improved if it can only talk locally
  • make sendbuffer before encrypt more automatic instead of +2x0x18
  • queuelength is maxtcpcon
  • replace plink_active with my own linked list of pcryp
  • remove existing connections coming from the same IP when new connection
  • unify all sends into data_send
  • use vTaskList to find stack usage
  • store clientkeys in an encrypted format
  • make remove invited key more robust
  • swap buffer for encrypt input with output and then it can grow what is needed
  • do encryption concatenation backward so you need a 0x400 input buffer max
  • verify is calculation of len in decrypt is OK, should be shifting with loop, right?
  • after deleteing a guest, track down existing TCP sessions and kill those
  • if tcp not encrypted within 2 seconds, close it
  • fix issue of notes8a.txt

Doing

  • Add Travis CI build job

Done

  • Change mdns flooding approach into a real bonjour strategy Change mdns flooding approach into a real bonjour strategy #32
  • only accept pair-setup URL if pairing
  • keepalive doesn't kill because events keep it awake or it is just broken! keepalive doesn't kill because events keep it awake or it is just broken! #13
  • use state=4 as criterion not to send more... keepalive doesn't kill because events keep it awake or it is just broken! #13
  • make identity a random value on factory reset
  • make a mdns routine that really builds the message make a mdns routine that really builds the message #11
  • Reorganize code Source code organization #2
  • make the callback routine responsible for init etc. by using a param to be multiuse
  • when disconnect, remove the event flag
  • if not encrypted, do not accept json messages
  • get random keys in place
  • change v for B in crytoinit
  • make SRP step 1 part of init in case of pairing
  • get debug printing conditional
  • implement GET /characteristics
  • make multiple clients work in parallel
  • event message
  • implement GET /identify
  • identify before pair
  • make an 'update' routine
  • make the setup of a characteristic a routine with some params
  • unify all routines in one file an make it a library
  • consider vTaskdelay in mdns loop
  • change decrypt out buffer from objects[3] to a dynamic buffer (if too big)
  • make pairing variables dynamic, not global
  • and do something usefull with this foundation ;-)
  • gpio stuff can be done without driver stuff??
  • consider espconn_find_connection
  • already prepare accessory message while verifying signature

Not possible

  • store myusername and mykey and peerkey in RTC-flash -- it is not flash but ram
  • make task stack value 256 instead of 2560 -- crashes and didn't make an advantage in heap report
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants