1
0
Fork 0
mirror of https://github.com/gssapi/gssproxy.git synced 2026-09-20 00:10:28 +00:00
  • C 86%
  • Python 6.5%
  • RPC 3.5%
  • M4 2.4%
  • Makefile 1.4%
  • Other 0.2%
Find a file
Prabhakar Pujeri 4d8d5de956 gp_creds: fix use-after-free in gp_count_tickets()
The original do-while pattern calls krb5_free_cred_contents() on the
krb5_creds buffer even when krb5_cc_next_cred() reports KRB5_CC_END,
i.e. after the iterator already returned without writing the buffer:
the terminal iteration frees either freed or stale contents.

Reshape as a while loop whose condition performs the iterator call so
the body only runs on success, keep error handling after the loop, and
terminate the cursor on the mid-iteration error path (the earlier
goto-done skipped krb5_cc_end_seq_get, leaking the cursor).

Signed-off-by: Prabhakar Pujeri <prabhakar.pujeri@dell.com>
2026-09-08 09:50:03 -04:00
.github/workflows Debian sid seem to have chaned to libselinux-dev 2026-01-29 10:05:14 -05:00
contrib Update URLs to project page, fedorahosted.org got retired 2024-03-20 11:32:38 -04:00
docs Support clients running in AT_SECURE context 2026-07-08 09:24:52 -04:00
examples Always install the gss module configuration 2022-05-23 12:05:28 -04:00
external Fix cross compilation 2026-06-18 08:49:00 -04:00
man Fix gssproxy.conf manpage about comments 2025-03-26 18:52:14 -04:00
po Intial skeleton gssproxy daemon 2012-01-04 19:19:54 -05:00
rpcgen Change declaration of function map 2025-02-10 21:30:58 -05:00
src gp_creds: fix use-after-free in gp_count_tickets() 2026-09-08 09:50:03 -04:00
systemd Revert "Remove the NoNewPrivileges because it breaks the ability to open socket" 2025-03-06 09:07:46 -05:00
tests Fix various issues detected by static analysis 2024-08-07 12:29:07 -04:00
x-files Official IANA Assigned RPC Program Number 2012-03-30 08:16:41 -04:00
.gitignore Add test for userproxy mode 2022-05-23 18:56:56 -04:00
BUILD.txt Update test and krb5 dependency list in BUILD.txt 2017-08-11 13:46:27 -04:00
build_macros.m4 Intial skeleton gssproxy daemon 2012-01-04 19:19:54 -05:00
conf_macros.m4 Always install the gss module configuration 2022-05-23 12:05:28 -04:00
configure.ac Don't check for libref_array explicitly 2026-01-29 10:23:19 -05:00
COPYING Fix formatting on noncompliant copyright lines 2015-09-04 16:34:42 -04:00
Makefile.am Move runtime management function to gp_mgmt.c 2022-05-26 12:36:13 -04:00
NOTES add note about how to deal with ccache files 2012-04-05 11:20:33 -04:00
README.md Add a few badges rendered on github 2022-06-05 14:40:08 -04:00
STYLE.txt Rename README.style -> STYLE.txt so pagure stops picking it up 2018-05-09 13:14:53 -04:00
version.m4 Version 0.9.2 2023-10-19 12:09:32 -04:00

Changelog Build Status

This is the gss-proxy project.

Documentation lives in the docs folder of this repository.

The goal is to have a GSS-API proxy, with standardizable protocol and a (somewhat portable) reference client and server implementation. There are several motivations for this some of which are:

  • Kernel-mode GSS-API applications (CIFS, NFS, AFS, ...) need to be able to leave all complexity of GSS_Init/Accept_sec_context() out of the kernel by upcalling to a daemon that does all the dirty work.

  • Isolation and privilege separation for user-mode applications. For example: letting HTTP servers use but not see the keytabe entries for HTTP/* principals for accepting security contexts.

  • Possibly an ssh-agent-like SSH agent for GSS credentials -- a gss-agent.

gss-proxy uses libverto for dealing with event loops. Note that you need to have at least one libverto event library installed (e.g. libverto-tevent).

We have a mailing list and an IRC channel (#gssapi on libera.chat).