jabber.developer2 1dd22af294 fix: follow-ups to cherry-picked d3d7c328b
- src/xmpp/jid.c: add missing #include "log.h" — d3d7c328b
  introduced a log_debug() call in jid_create without pulling in
  the header, so the source tree did not actually build.

- src/omemo/omemo.c omemo_on_message_send: add the missing
  NULL-check after the gcry_malloc_secure calls for 'tag' /
  'key_tag' so a real OOM does not sail into the memcpy/encrypt
  path. (The 'key' check d3d7c328b added is defensive only —
  gcry_random_bytes_secure aborts internally on failure.)

- src/omemo/omemo.c _cache_device_identity: drop the second
  'if (!fingerprint) return' on the autocomplete path. fingerprint
  is already NULL-checked at the top of the function and is not
  reassigned in between, so the second guard is dead code (upstream
  artefact).

- src/tools/editor.c launch_editor: replace the
  g_main_context_acquire/release pair with
  g_child_watch_source_new(getpid()) + g_source_unref.
  acquire/release does not install GLib's SIGCHLD handler — that
  handler is registered as a side effect of constructing a
  GChildWatchSource. Now we actually pre-arm SIGCHLD before
  forking, which is what d3d7c328b's comment claimed.

- src/ui/statusbar.c status_bar_inactive / _create_tab: switch the
  remaining two literal '10' tab-id values to the CONSOLE_TAB_ID
  define introduced by d3d7c328b, then inline the expression
  directly into the GINT_TO_POINTER() argument so the one-shot
  local 'true_win' goes away.

Verified with ci-build.sh in Debian docker: all 4 configs pass
(644/0, 605/0, 605/0, 644/0 unit + 130/0 functional).
2026-05-23 16:57:45 +03:00
2016-03-09 12:55:57 +01:00
2025-03-11 12:15:09 +01:00
2022-02-01 15:01:28 +01:00
2021-08-26 00:30:55 +00:00
2019-04-24 01:08:38 +02:00
2026-04-10 18:29:41 +02:00
2026-04-10 18:29:41 +02:00
2026-02-05 16:48:50 +01:00

CProof

Build Status

CProof is a console based XMPP chat client based on Profanity.

alt tag

See the Quick Start Guide for information on installing and using CProof.

Project

CProof enables you to communicate with privacy, freedom and comfort. Our open-source chat application delivers secure, end-to-end encrypted messaging (OTR, PGP, OMEMO, OX) built on the trusted XMPP protocol. With a decentralized design, you can connect directly or even host your own server, keeping your data in your hands. Whether you're chatting with friends or collaborating securely, CProof makes private communication simple, reliable, and truly yours.

Installation

Check our installation guide for detailed instructions.

How to contribute

See our Helping Out page for a concise summary of ways to help us.

Review the Contributing Guide and Code Overview pages for advanced technical details.

Getting help

Prior to asking questions, check our User Guide, then check out the FAQ.

If you are still having a problem then search the issue tracker.

As a last resort, feel free to write us on support@jabber.tech or create a new issue depending on what your problem is.

Website

Feel free to visit our website: jabber.space.

You may also check the repository if you like, available on git.jabber.space/devs/profanity.

Plugins

Plugins repository: https://git.jabber.space/devs/cproof-plugins

Description
Mirror of the CProof repository. Used for backward compatibility. Please use https://git.jabber.space/devs/cproof for Issues, Pull Requests and any other interactions.
Readme 38 MiB
Languages
C 95.2%
Python 1.7%
Makefile 0.9%
M4 0.8%
Shell 0.7%
Other 0.6%