To implement OTR function on IRC client, to make chatting private.

pure-python-otr (potr) has lack of maintenance for a long time and been considered as "potentially insecure". So I will call libotr5 directly with C.

This project have two parts need to research on. The IRC client API and libotr calling method. It probably will not be finished in just one hackweek, I'll keep working on it.

Reference:

Looking for hackers with the skills:

otr offtherecord libotr irc c

This project is part of:

Hack Week 15

Activity

  • over 8 years ago: JWSun liked this project.
  • over 8 years ago: tonghuix joined this project.
  • over 8 years ago: tonghuix liked this project.
  • over 8 years ago: mitiao joined this project.
  • over 8 years ago: bchou liked this project.
  • over 8 years ago: j_renner liked this project.
  • over 8 years ago: whdu added keyword "c" to this project.
  • over 8 years ago: whdu started this project.
  • over 8 years ago: whdu liked this project.
  • over 8 years ago: whdu added keyword "otr" to this project.
  • over 8 years ago: whdu added keyword "offtherecord" to this project.
  • over 8 years ago: whdu added keyword "libotr" to this project.
  • over 8 years ago: whdu added keyword "irc" to this project.
  • over 8 years ago: whdu originated this project.

  • Comments

    • mook_work
      over 8 years ago by mook_work | Reply

      Hi, which IRC client are you intending to write a plugin? Pidgin has one (your first link). There's an existing one for irssi (it's in the OpenSUSE repos; it's also unclear why it generates two RPMs).

      • whdu
        over 8 years ago by whdu | Reply

        weechat is the first one I want to work on

        There's an existing weechat-otr depend on python-pure-otr but not working and unsafe now. And there's a very old weechat-otr (about 5 years ago) in the community, but it is out of day can not work. So I have to start from scratch.

    Similar Projects

    pudc - A PID 1 process that barks to the internet by mssola

    Description

    As a fun exercise in order to dig deeper into the Linux kernel, its interfaces, the RISC-V architecture, and all the dragons in between; I'm building a blog site cooked like this:

    • The backend is written in a mixture of C and RISC-V assembly.
    • The backend is actually PID1 (for real, not within a container).
    • We poll and parse incoming HTTP requests ourselves.
    • The frontend is a mere HTML page with htmx.

    The project is meant to be Linux-specific, so I'm going to use io_uring, pidfs, namespaces, and Linux-specific features in order to drive all of this.

    I'm open for suggestions and so on, but this is meant to be a solo project, as this is more of a learning exercise for me than anything else.

    Goals

    • Have a better understanding of different Linux features from user space down to the kernel internals.
    • Most importantly: have fun.

    Resources