From 410aa64de0cce326058632458b0fac171cb7d258 Mon Sep 17 00:00:00 2001 From: Yuriy Andamasov Date: Thu, 7 May 2026 14:30:33 +0300 Subject: general: T8595: add AGENTS.md --- .github/copilot-instructions.md | 1 + AGENTS.md | 49 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 120000 .github/copilot-instructions.md create mode 100644 AGENTS.md diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md new file mode 120000 index 0000000..be77ac8 --- /dev/null +++ b/.github/copilot-instructions.md @@ -0,0 +1 @@ +../AGENTS.md \ No newline at end of file diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..a145a6d --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,49 @@ +# AGENTS.md + +## Project purpose + +NSS plugin (`libnss_tacplus.so`) that resolves `getpwnam` lookups for TACACS+-authenticated users that have no local `/etc/passwd` entry. Maps remote TACACS+ users onto the local `tacacs0..15` stub accounts and pulls home/uid/gid via `libtacplus-map`. Used together with `libpam-tacplus` for full TACACS+ login flow on VyOS. + +## Tech stack + +- C, GNU autotools (`configure.ac`, `Makefile.am`, `aclocal.m4`). +- Debian packaging in `debian/` (debhelper >= 9, autotools-dev, `libtac-dev`, `libtacplus-map-dev`, `libaudit-dev`, `libpam-tacplus-dev`). +- License: GPL-2.0 (per `COPYING`). + +## Build / test / run + +```sh +./auto.sh # autoreconf (generates ./configure) +./configure +make +sudo make install # installs libnss_tacplus.so + tacplus_nss.conf +dpkg-buildpackage -us -uc # debian package build +``` + +No in-tree test suite — exercised end-to-end on a VyOS image via `pam_tacplus` login. + +## Repository layout + +- `nss_tacplus.c`, `nss_tacplus.h` — NSS module entry points. +- `tacplus_nss.conf`, `tacplus_nss.conf.5` — config file + man page. +- `debian/` — Debian packaging. + +## Cross-repo context + +Pre-dep of the `vyos-1x` runtime auth stack. Built via `VyOS-Networks/vyos-build-packages` and shipped in the ISO from `vyos/vyos-build`. Calls into `libtacplus-map` (mapping helper) and the `libtac` library produced by `libpam-tacplus`. Companion repos: `libpam-tacplus`, `libtacplus-map`, `libnss-mapuser`, `libpam-radius-auth`. + +## Conventions + +- Default branch `master` (forked from `daveolson53/libnss-tacplus`). +- Commit / PR title format: `component: T12345: description` (Phorge task ID at https://vyos.dev) — enforced if PR-message workflow is added later. No workflow files currently in `.github/workflows/`. +- Treat as upstream-vendored: keep diffs against fork minimal; new functionality belongs in `libtacplus-map` or `libpam-tacplus`. + +## Mirror relationship + +Mirror twin: `VyOS-Networks/libnss-tacplus`. Canonical side is here. The mirror pipeline (`vyos/.github/.github/workflows/pr-mirror-repo-sync.yml`) is **not** wired up for this repo today (no workflows in `.github/workflows/`). + +## Notes for future contributors + +- README is upstream's `libnss_tacplus v1.0.1` text (June 2016) — do not assume it documents VyOS-specific patches. +- Outbound webhook to `hooks.zapier.com` is configured at the repo level (audit baseline 2026-04-18). +- LTS-only changes go to `sagitta`/`circinus`/`equuleus` branches if/when created; today only `master` exists. -- cgit v1.2.3 From 1d50cc9ac1e96e1107a1aa4f219316c497561c6e Mon Sep 17 00:00:00 2001 From: Yuriy Andamasov Date: Thu, 7 May 2026 19:03:52 +0300 Subject: general: T8595: clean leaked internal references --- AGENTS.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AGENTS.md b/AGENTS.md index a145a6d..a144388 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -13,7 +13,7 @@ NSS plugin (`libnss_tacplus.so`) that resolves `getpwnam` lookups for TACACS+-au ## Build / test / run ```sh -./auto.sh # autoreconf (generates ./configure) +./auto.sh # autoreconf (generates./configure) ./configure make sudo make install # installs libnss_tacplus.so + tacplus_nss.conf -- cgit v1.2.3 From d9db2273b1ee817e2768994207489e0f1029999f Mon Sep 17 00:00:00 2001 From: Yuriy Andamasov Date: Thu, 7 May 2026 19:27:23 +0300 Subject: general: T8595: scrub private-org references from public AGENTS.md --- AGENTS.md | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index a144388..da97a79 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -30,7 +30,7 @@ No in-tree test suite — exercised end-to-end on a VyOS image via `pam_tacplus` ## Cross-repo context -Pre-dep of the `vyos-1x` runtime auth stack. Built via `VyOS-Networks/vyos-build-packages` and shipped in the ISO from `vyos/vyos-build`. Calls into `libtacplus-map` (mapping helper) and the `libtac` library produced by `libpam-tacplus`. Companion repos: `libpam-tacplus`, `libtacplus-map`, `libnss-mapuser`, `libpam-radius-auth`. +Pre-dep of the `vyos-1x` runtime auth stack. Built via the internal build-packages workflow and shipped in the ISO from `vyos/vyos-build`. Calls into `libtacplus-map` (mapping helper) and the `libtac` library produced by `libpam-tacplus`. Companion repos: `libpam-tacplus`, `libtacplus-map`, `libnss-mapuser`, `libpam-radius-auth`. ## Conventions @@ -38,10 +38,6 @@ Pre-dep of the `vyos-1x` runtime auth stack. Built via `VyOS-Networks/vyos-build - Commit / PR title format: `component: T12345: description` (Phorge task ID at https://vyos.dev) — enforced if PR-message workflow is added later. No workflow files currently in `.github/workflows/`. - Treat as upstream-vendored: keep diffs against fork minimal; new functionality belongs in `libtacplus-map` or `libpam-tacplus`. -## Mirror relationship - -Mirror twin: `VyOS-Networks/libnss-tacplus`. Canonical side is here. The mirror pipeline (`vyos/.github/.github/workflows/pr-mirror-repo-sync.yml`) is **not** wired up for this repo today (no workflows in `.github/workflows/`). - ## Notes for future contributors - README is upstream's `libnss_tacplus v1.0.1` text (June 2016) — do not assume it documents VyOS-specific patches. -- cgit v1.2.3