Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
113 commits
Select commit Hold shift + click to select a range
50bbafd
CONSOLE: eos rm two or more files at once. Fixes EOS-4147
tavisit Mar 23, 2026
a850488
CI: Better handling of drop deletions tests
tavisit Mar 31, 2026
9817c37
CONSOLE: framework refactoring
apeters1971 Mar 24, 2026
b88de53
MGM: Added a new Tokenize function for quoted values. Fixes EOS-5783
tavisit Mar 20, 2026
bcc3104
MGM: Fix `eos space status` json invalid conversion. Closes https://i…
lobis Apr 8, 2026
7be0c12
MGM: Traffic Shaping - Improve locking
lobis Apr 10, 2026
ffeff2e
CONSOLE: re-add all details in help for fs,io,node,ns,space commands
apeters1971 Apr 15, 2026
6bd39f9
CONSOLE: re-add help details for acl,df,find,group,quota commands
apeters1971 Apr 15, 2026
49abbbe
CONSOLE: re-add help details for inspector,member,route,tracker
apeters1971 Apr 15, 2026
95f6894
MGM: add warning message for SSS hostname mismatch
rptaylor Apr 9, 2026
34d4976
MGM: show space usage in percentage. Fixes EOS-3866
tavisit Apr 1, 2026
f7c295f
MGM: added duration to open and log more useful information. Fixes EO…
tavisit Apr 17, 2026
68387f1
MGM: add check_sss_hostname_match static helper function
rptaylor Apr 21, 2026
219546a
MGM: Double check the xattr propagation before declaring failure for …
esindril Apr 21, 2026
6fe506a
MGM: Add protection so that fsck does not touch files that are on tap…
esindril Apr 23, 2026
0800129
MGM: Treat read-only space protobuf subcommands as read access
lobis Apr 23, 2026
bad0601
MGM: extend eos ns with MGM and QDB leadership status
lobis Apr 23, 2026
a3faf71
FUSEX: Increase max_background and ensure file open in read
smithdh Mar 23, 2026
2558182
FUSEX: Don't serialize children field back to server
smithdh Mar 25, 2026
2f66f6c
MGM: File rename handles directories. It also handles fxid/cxid/fid/c…
tavisit Apr 24, 2026
549b893
MGM: remove lock for getUri when resolving identifier
tavisit Apr 24, 2026
38f1910
CONSOLE: add eos-tui integration
lobis Apr 24, 2026
d8b02c8
COMMON: Remove logging of token in the WFEClient class.
Apr 24, 2026
107b890
CI: Allow Reva tests to fail and not block the pipeline in case Reva …
esindril Apr 24, 2026
757093a
FST: Transfers that fail due to checksum mismatch update diskchecksum…
tavisit Apr 27, 2026
6c564b8
DAEMON: start xrootd without -l logfile when EOS_ZSTD_LOGGING is enabled
apeters1971 Apr 20, 2026
dd8d80a
MGM: route error-report listener through the ZSTD Logging pipeline
apeters1971 Apr 20, 2026
3e82229
ALL: Provide a simple random number interface. Fixes EOS-5068
tavisit Apr 28, 2026
e57fba9
ALL: Fix jwt-cpp compilation issues on non-Alma 9 and avoid cmake tar…
esindril Apr 28, 2026
81a331e
CI: Allow publishing of commit artifacts just after build passes so w…
lobis Apr 28, 2026
8f6a651
CI: Address some GitLab pipeline minor issues
lobis Apr 28, 2026
cd747d1
CONSOLE: add CLI tab completion
lobis Apr 28, 2026
ab73163
MGM/FST: base64 encode traffic shaping protobuf state
lobis Apr 29, 2026
9a58654
CONSOLE: Add missing newlines for space help command
adriansev Apr 29, 2026
9cb6b56
FUSE: Inline thread_id() and thread_alive() macro
ccaffy Apr 24, 2026
f25e8e8
ALL: Fix build for MacOSX
esindril Apr 29, 2026
74eec15
MGM: implement symmetric behaviour in legacy and proto ProcCmd implem…
apeters1971 Apr 30, 2026
e0a591f
MGM: add a second-level admin gate to FileRegisterCmd
apeters1971 Apr 30, 2026
052a69f
MGM: expired tokens are not dumped anymore on the CLI and in the log
apeters1971 Apr 30, 2026
d9c749b
COMMON: fix bug in multi-origin tokens, which might have rejected a
apeters1971 Apr 30, 2026
47a8e59
ALL: Use one source of truth for the CLI11 header for parsing
esindril May 4, 2026
2172b3f
CONSOLE: Add hiddend common options for ls command otherwise the CLI11
esindril May 4, 2026
624ae4e
FUSEX: Fix ifdef for Linux platforms
esindril May 4, 2026
ef6435a
COMMON: Adjust permission checks for password files that end up with
esindril May 5, 2026
e6e82f5
CMAKE: Set EOS TUI version to 0.2.6
lobis Apr 29, 2026
8a9375f
CMAKE: Include `eos-tui` in macos arm64
lobis May 5, 2026
6409e24
MGM/FST: add fs detail to traffic shaping reports
lobis Apr 29, 2026
5051ebe
MGM: add JSON output and full tag view to traffic shaping CLI
lobis Apr 29, 2026
3d1e7d9
MGM: resolve uid/gid labels and compact JSON output for traffic shaping
lobis Apr 29, 2026
f815524
MGM/FST: unify traffic shaping key handling between node id and uid/g…
lobis May 4, 2026
dfc7034
CMAKE: Improve macOS build support
lobis May 5, 2026
77f9893
TEST: Fix stress test in multi-process/thread writing mode to avoid c…
esindril May 5, 2026
48b28e1
COMMON/AUTH: Fix wrong if statement when selecting local interface fo…
esindril May 5, 2026
d10f43c
PROJECT: draft security policy
apeters1971 May 6, 2026
cc1aa64
CONSOLE/MGM/FST: Add "cbox_forbid_rw_sync" node configuration option …
esindril May 6, 2026
55ed2bb
PROJECT: iterate on SECURITY.md
apeters1971 May 6, 2026
78138f3
COMMON: Added uint64_t to table cell. Fixed EOS-5071
tavisit May 6, 2026
25f59cc
MGM: Table formatted output for FlatScheduler printing. Fixes EOS-6063
tavisit May 6, 2026
0b51baa
CONSOLE: improve `eos io` command help
lobis May 5, 2026
f99be41
Chown QuarkDB observer directory after create
lobis May 6, 2026
9f2cdcf
GRPC: Modify information begin printed at INFO log level
esindril May 6, 2026
fe84ce9
CMAKE: Fix typo and remove unused files
esindril May 7, 2026
35820f5
MGM: Improve info logged for the gRPC REST GW service
esindril May 7, 2026
44f9e58
GRPC: Add json dump of the request for the REST GW interface
esindril May 7, 2026
218e13d
MGM/GRPC: Add reflection capability to the GRPC endpoints
esindril May 7, 2026
323666c
COMMON: Include cstdint for TableCell uint64_t overload
lobis May 6, 2026
ea4212a
CONSOLE: extend 'report' function for readv and iops
apeters1971 May 7, 2026
4ad8970
MGM/FST: Fix Traffic Shaping config replay and FST sync
lobis May 6, 2026
77e3901
GIT: Update grpc-proto submodule
esindril May 8, 2026
08ce5d9
COMMON: Fix TableCell integer overload collision
lobis May 8, 2026
929e415
MGM/GRPC: hardening TrafficShapingRate to require admin identity
apeters1971 May 6, 2026
e01e776
MGM/GRPC: hardening insecure default - require explicit ack and bind …
apeters1971 May 8, 2026
9f16c7a
MGM/GRPC: hardening visibility of EOS_MGM_GRPC_DONT_REQUEST_CLIENT_CE…
apeters1971 May 6, 2026
bbdfbe6
MGM/GRPC: hardening REST gateway against unauthenticated identity spo…
apeters1971 May 8, 2026
fad7e2f
GIT: Update quarkdb submodule
esindril May 8, 2026
f36959f
GRPC: REST gatway remove unused code and clearly separate the HTTP an…
esindril May 8, 2026
e225001
MGM: Move traffic shaping rate report building to proc
lobis May 8, 2026
9df5590
TEST: Force GRPC client to use SSL as now the server uses an encrypte…
esindril May 8, 2026
7e7c3ee
TEST: Update GRPC test script to specify FQDN of the GRPC endpoint.
esindril May 10, 2026
b6043ae
TEST: Reduce time intervals for LRU test to make it more reliable
esindril May 10, 2026
08fd014
TEST: Forward second parameter to eos_grpc test
esindril May 11, 2026
4e3c83c
TEST: Add host ips as GRPC gateway
esindril May 11, 2026
2b5f73a
TEST: Fix grpc test URL used for upload
esindril May 11, 2026
c0f554f
TEST: Add mgm ip addresses as GRPC gateways
esindril May 11, 2026
9118e18
TEST: Update GRPC endpoint used for REVA tests
esindril May 11, 2026
3c07d3e
TEST: Don't allow insecure REVA connections via GRPC
esindril May 11, 2026
00bcc8f
DOC: Fix merge left-overs
esindril May 12, 2026
92cfa3d
GRPC: Make EOS compile without having eos-grpc-server installed
ccaffy May 12, 2026
a9f48c6
SPEC: fetch eos-tui from CERN storage-ci instead of GitHub
lobis May 12, 2026
e497d11
CI: Delay var evaluation until commands is executed in container
esindril May 12, 2026
92ba1b3
UBUNTU: Don't publish artifacts before the tests are done
esindril May 13, 2026
6c597b8
TEST: Delay command evaluation until it's run inside the target conta…
esindril May 13, 2026
74a2833
TEST: Add custom caveat support to eos-macaroon-init and selective te…
esindril May 13, 2026
37c9169
TEST: Fix typo
esindril May 13, 2026
aa23fbf
MGM: enforce ACL '!w' denial in mkdir/rmdir so it overrides POSIX mod…
apeters1971 May 12, 2026
c43e026
MGM: Harden FuseServer hard-link creation against cross-parent attacks
apeters1971 May 13, 2026
e2b0833
MGM: Fix REST gateway null-tident crash and harden Mapping::IdMap
apeters1971 May 13, 2026
b5f4658
MGM: Redact gRPC authkey from log output (no tident, no raw token)
apeters1971 May 13, 2026
2b9dc6e
MGM/REST: Enforce issuer check on tape stage bulk-request access
apeters1971 May 13, 2026
b52dbc5
MGM: propagate parent ttime and align mtime stamp in FuseServer OpSet…
apeters1971 May 18, 2026
c1fcb36
FUSEX: force fresh MGM fetch for eos.ttime / eos.tsize on directories -
apeters1971 May 18, 2026
c2277fd
MGM/FST: Improve traffic shaping delay feedback
lobis May 18, 2026
7c9cc8b
MGM/CONSOLE: Add reservation-based traffic shaping
lobis May 18, 2026
e734a21
MGM/CONSOLE: Expose reservation pressure diagnostics
lobis May 18, 2026
f914f3a
MGM/CONSOLE: Simplify traffic shaping policy loop
lobis May 18, 2026
19b0878
MGM/CONSOLE: Expose traffic shaping map cardinality
lobis May 18, 2026
f4f9a21
MGM/CONSOLE: Configure traffic shaping GC idle time
lobis May 18, 2026
f4a4507
MGM: Run traffic shaping GC on wall clock
lobis May 18, 2026
1652e8e
CONSOLE: restore ~/.eos_pwd persistence in native cd command
apeters1971 May 19, 2026
3bc2195
MGM: Improve logging for quota and qdbmaster
esindril May 19, 2026
c9a8079
Revert "MGM: Make sure that disabling of the ns cache during the slav…
esindril May 19, 2026
63d4e95
MGM: drop redundant config save in traffic shaping
gmgigi96 May 19, 2026
929ffd8
MGM: fix WeightedRandomPlacement::access selectedIndex and zero-weigh…
bodoque-01 May 20, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
48 changes: 38 additions & 10 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ clone_docker:
else
source gitlab-ci/setup_ccache.sh;
fi
- rpmbuild --rebuild --with server --with eos_grpc_gateway --define "_rpmdir build/RPMS/" --define "_build_name_fmt %%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm" build/SRPMS/* | (ts 2> dev/null || true; tee)
- rpmbuild --rebuild --with server --with eos_grpc_gateway --define "_rpmdir build/RPMS/" --define "_build_name_fmt %%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm" build/SRPMS/* | (ts 2> /dev/null || true; tee)
- ccache -s
- if [[ -n "$CI_COMMIT_TAG" ]]; then gpg2 --batch --import $STCI_REPO_KEY; printf "" | setsid rpmsign --define='%_gpg_name stci@cern.ch' --define='%_signature gpg' --addsign build/RPMS/*.rpm; fi
- mkdir ${BUILD_NAME}_artifacts; cp -rv build/*RPMS/ build/eos-*.tar.gz ${BUILD_NAME}_artifacts
Expand Down Expand Up @@ -767,6 +767,7 @@ el9_asan_docker_image:
- exec_cmd eos-mgm1 "eos vid add gateway \"127.0.0.1\" https"
- exec_cmd eos-mgm1 "eos vid add gateway \"[:1]\" https"
- exec_cmd eos-mgm1 "eos vid add gateway \"[::1]\" https"
- exec_cmd eos-mgm1 "for ip in \$(hostname -i); do eos vid add gateway \$ip https; done"
- exec_cmd eos-mgm1 "eos vid set map -grpc key:auth_key vuid:11 vgid:11"
- exec_cmd eos-mgm1 "eos vid set map -https key:auth_key vuid:11 vgid:11"
- exec_cmd eos-mgm1 "eos vid set membership 11 +sudo"
Expand All @@ -776,7 +777,11 @@ el9_asan_docker_image:
- echo ${MGM_POD_HOSTNAME}

# We connect over https, and the certificate is only valid for the hostname, so replace localhost with the MGM's hostname
- exec_cmd eos-mgm1 'sed -i "s/^\(master_url = \"https:\/\/\)localhost\(:[0-9][0-9]*\"\)/\1$(hostname -f)\2/" reva/tests/integration/reva-cli/config/revad-eos.toml'
- |
exec_cmd eos-mgm1 'sed -i -e "s/^\(master_url = \"https:\/\/\)localhost\(:[0-9][0-9]*\"\)/\1$(hostname -f)\2/" \
-e "s/^\(master_grpc_uri = \"\)localhost\(:[0-9][0-9]*\"\)/\1$(hostname -f)\2/" \
-e "s/^\(allow_insecure = \)true/\1false/" \
reva/tests/integration/reva-cli/config/revad-eos.toml'

# Start revad
- exec_cmd eos-mgm1 './reva/cmd/revad/revad -c reva/tests/integration/reva-cli/config/revad-eos.toml </dev/null >revad.log 2>&1 & echo $! > revad.pid'
Expand All @@ -786,7 +791,6 @@ el9_asan_docker_image:
- exec_cmd eos-mgm1 "eos vid ls"
- exec_cmd eos-mgm1 "eos access ls"
- exec_cmd eos-mgm1 "cat revad.log"

artifacts:
when: on_failure
expire_in: 3 days
Expand Down Expand Up @@ -893,26 +897,35 @@ publish_koji_al8:
variables:
TARGET: "eos8al"
BUILD_NAME: "el-8"
dependencies:
- build_el8
only:
- schedules
- tags
needs:
- job: build_el8
artifacts: true


publish_koji_al9:
<<: *publish_koji_template_definition
variables:
TARGET: "eos9al"
BUILD_NAME: "el-9"
dependencies:
- build_el9
needs:
- job: build_el9
artifacts: true


publish_koji_al10:
<<: *publish_koji_template_definition
variables:
TARGET: "eos10al"
BUILD_NAME: "el-10"
dependencies:
- build_el10
only:
- schedules
- tags
needs:
- job: build_el10
artifacts: true


publish_koji_rh-8:
Expand Down Expand Up @@ -1044,6 +1057,21 @@ notify_cta_project:
rpm_commit_artifacts:
stage: publish
image: gitlab-registry.cern.ch/linuxsupport/alma9-base
needs:
- job: build_el8
artifacts: true
optional: true
- job: build_el9
artifacts: true
- job: build_el10
artifacts: true
optional: true
- job: build_el9_arm64
artifacts: true
optional: true
- job: build_fedora_38
artifacts: true
optional: true
script:
- dnf install --nogpg -y sudo sssd-client createrepo
- if [[ -n "$CI_COMMIT_TAG" ]]; then echo "This only works for commits"; exit 0; else BUILD_TYPE="commit"; fi
Expand Down Expand Up @@ -1162,7 +1190,7 @@ clean_k8s_cluster:
- export KUBECONFIG=$K8S_CONFIG
- set +o pipefail
- kubectl get namespaces --no-headers | grep -v 'default\|kube-node-lease\|kube-public\|kube-system\|magnum-tiller' |
awk 'match($3,/[3-9][0-9]+h||[[:alnum:]]+d/) {print $1}' | xargs --no-run-if-empty kubectl delete namespaces
awk 'match($3,/(([3-9][0-9]|[1-9][0-9][0-9]+)h|[1-9][0-9]*d)/) {print $1}' | xargs --no-run-if-empty kubectl delete namespaces
dependencies: []
allow_failure: true
only:
Expand Down
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -35,3 +35,6 @@
[submodule "fst/css_plugin"]
path = fst/css_plugin
url = https://gitlab.cern.ch/eos/css_plugin.git
[submodule "console/parser"]
path = common/parser
url = https://github.com/CLIUtils/CLI11.git
11 changes: 4 additions & 7 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,6 @@ endif()

set(CMAKE_INSTALL_SYSCONFDIR /etc)
include(EosFindLibs)

include(CTest)

#-------------------------------------------------------------------------------
Expand Down Expand Up @@ -142,12 +141,8 @@ add_subdirectory(misc)
add_subdirectory(test)
add_subdirectory(namespace/ns_quarkdb/qclient)

if (GRPC_FOUND)
add_subdirectory(client)
endif()

if (NOT CLIENT)

add_subdirectory(client)
add_subdirectory(mgm)
add_subdirectory(namespace)
add_subdirectory(utils)
Expand Down Expand Up @@ -185,6 +180,8 @@ set(CPACK_SOURCE_IGNORE_FILES
;/grpc/eos-grpc.spec;/.deps/;~$;'.'o$;/lib/;/.git/;eos.spec.in;elrepopackage.spec;.tar.gz$;\
.tar.bz2$;${CPACK_SOURCE_IGNORE_FILES};")

set(EOS_TUI_VERSION "0.2.11")

configure_file(
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/config_spec.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/cmake/config_spec.cmake" @ONLY IMMEDIATE)
Expand Down Expand Up @@ -245,7 +242,6 @@ if (EOS_GRPC_GW)
LIST(APPEND RPM_OPTIONS --with eos_grpc_gateway)
endif()


add_custom_target(
srpm
COMMAND rpmbuild -ts ${EOS_ARCHIVE} --define "_topdir ${CMAKE_BINARY_DIR}" ${SRPM_DEFINE} ${RPM_OPTIONS})
Expand All @@ -256,6 +252,7 @@ add_custom_target(

add_dependencies(srpm dist)
add_dependencies(rpm dist)
include(EosTui)

#-------------------------------------------------------------------------------
# Custom target to build on OSX
Expand Down
144 changes: 144 additions & 0 deletions SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,144 @@
# Security Policy

## Reporting a Vulnerability

We take security issues seriously and appreciate responsible disclosure from the community.

If you believe you have found a security vulnerability in this project, please report it privately. Do **not** open a public GitHub issue for security vulnerabilities.

## How to Report

Please use one of the following private reporting channels:

1. **CERN GitLab — primary and preferred reporting channel**

Use CERN GitLab for vulnerability reports whenever possible. This is the primary development repository and the preferred place to submit security reports.

https://gitlab.cern.ch/dss/eos/-/security/vulnerability_report

2. **GitHub — for external collaborators without CERN GitLab access**

Use GitHub private vulnerability reporting only if you are an external collaborator and do not have access to CERN GitLab.

https://github.com/cern-eos/eos/security/

Please do not submit the same report through multiple channels unless requested by the maintainers.

When reporting a vulnerability, please include as much detail as possible, including:

- A description of the issue
- Steps to reproduce the vulnerability
- Affected versions, branches, or configurations
- Any proof-of-concept code, logs, screenshots, or error messages
- The potential impact of the vulnerability
- Any suggested remediation, if available

## Use of AI Coding Assistants in Vulnerability Research

We welcome thoughtful security reports that are discovered, analyzed, validated, or documented with the help of AI coding assistants, automated scanners, or similar tools. These tools can be useful for reviewing code, identifying suspicious patterns, improving reports, and suggesting possible remediations.

To help maintainers understand and reproduce the finding, please mention any AI coding assistant or automated tool that substantially contributed to the report. Where applicable, include:

- The name of the AI coding assistant or tool used
- The model, version, or service, if known
- How the tool was used, such as discovery, code review, exploit analysis, remediation suggestions, or report writing
- Any relevant prompts, generated output, scanner results, or tool findings needed to understand the issue
- The steps you took to verify the vulnerability and confirm its security impact

AI-assisted reports are most helpful when they include clear reasoning, reproducible steps, and evidence that the issue is real and exploitable. Reports do not need to be perfect, but they should provide enough information for maintainers to independently assess the finding.

Please avoid submitting private project data, secrets, credentials, personal data, or other sensitive information to AI tools unless you are authorized to do so and the tool is approved for that use.

## Use of AI Agents in Security Reporting

We also welcome reports that are prepared, submitted, triaged, or followed up on with the help of AI agents, automation agents, or other delegated systems. Agent-assisted reporting can be useful when it improves clarity, consistency, and responsiveness.

If an agent was used in preparing or managing a security report, please disclose this so that maintainers understand how the report and any follow-up communication are being handled. Where applicable, include:

- The name or type of agent used
- The platform, framework, or service provider, if known
- Whether the agent was used for vulnerability discovery, code analysis, exploit testing, report generation, submission, or follow-up communication
- Whether the agent acted autonomously or under human supervision
- The identity or contact details of the human or organization responsible for the report
- Any relevant limitations of the agent’s findings or communication

If follow-up communication is handled by an agent, please make sure that:

- The agent can provide accurate and relevant responses to maintainer questions
- A human reviewer can join the conversation when requested
- Communication remains focused, respectful, and useful
- Vulnerability details are kept private and shared only with authorized parties
- Requests for disclosure, credit, or compensation are handled appropriately and respectfully

When agents are used to identify or submit multiple findings, please keep the volume of simultaneous reports to a manageable level. Reports should be prioritized and submitted in order of highest criticality and security impact first. Where several related findings exist, consider grouping them into a single report when this helps maintainers understand the overall issue and reduces duplicate or overlapping communication.

Reports submitted or managed with the help of agents remain welcome under this policy, provided they follow the same responsible disclosure expectations as any other report and are backed by a responsible human contact.

## Supported Versions

Security updates are provided for the following versions:

| Version | Supported |
|---|---|
| Latest stable release | Yes |
| Older releases | No |
| Development branches | Best effort |

Only the latest stable release is guaranteed to receive security fixes unless otherwise stated.

## Disclosure Process

After a vulnerability is reported, we will make reasonable efforts to:

1. Acknowledge receipt of the report within 5 business days.
2. Investigate and validate the issue.
3. Work on a fix or mitigation if the issue is confirmed.
4. Coordinate disclosure timing with the reporter when appropriate.
5. Publish a security advisory or release notes after a fix is available, if needed.

We ask reporters to give us a reasonable amount of time to investigate and address the issue before making any information public.

## Responsible Disclosure Guidelines

We ask that security researchers and users:

- Do not publicly disclose the vulnerability until we have had a chance to investigate and address it.
- Do not access, modify, or delete data that does not belong to you.
- Do not perform testing that could degrade, disrupt, or damage the project, services, users, or infrastructure.
- Do not use social engineering, phishing, spam, physical attacks, or denial-of-service attacks.
- Provide enough information for us to reproduce and understand the issue.

Reports made in good faith under this policy are appreciated.

## Scope

This policy applies to the code and documentation in this repository.

The following are generally out of scope unless they demonstrate a clear security impact:

- Vulnerabilities in unsupported versions
- Issues requiring physical access to a user’s device
- Social engineering attacks
- Denial-of-service attacks
- Reports from automated scanners without evidence of exploitability
- Missing security headers without a demonstrated impact
- Issues in third-party dependencies that are not directly exploitable through this project

## Security Updates

Security fixes may be released as:

- A patch release
- A commit to the default branch
- A GitHub Security Advisory
- Updated documentation or configuration guidance

Users are encouraged to keep their deployments up to date with the latest stable release.

## No Bug Bounty

Unless explicitly stated otherwise, this project does not offer a paid bug bounty program. We are grateful for responsible reports but cannot guarantee monetary rewards.

## Contact

For security-related questions or vulnerability reports, please use the private reporting channels listed above.
2 changes: 1 addition & 1 deletion auth_plugin/ProtoUtils.cc
Original file line number Diff line number Diff line change
Expand Up @@ -347,7 +347,7 @@ utils::ComputeHMAC(RequestProto*& req)
return false;
}

std::string hmac = eos::common::SymKey::HmacSha1(smsg);
std::string hmac = eos::common::SymKey::HmacSha256(smsg);
XrdOucString base64hmac;
bool do_encoding = eos::common::SymKey::Base64Encode((char*)hmac.c_str(),
hmac.length(), base64hmac);
Expand Down
11 changes: 2 additions & 9 deletions client/grpc/GrpcClient.cc
Original file line number Diff line number Diff line change
Expand Up @@ -21,25 +21,20 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.*
************************************************************************/

/*----------------------------------------------------------------------------*/
#ifdef EOS_GRPC
#include "GrpcClient.hh"
#include "proto/Rpc.grpc.pb.h"
#include "common/StringConversion.hh"
#include "common/Timing.hh"
#include "common/Path.hh"
/*----------------------------------------------------------------------------*/
#include <absl/log/absl_check.h>
#include <grpcpp/grpcpp.h>
#include <grpc/support/log.h>
#include <google/protobuf/util/json_util.h>
/*----------------------------------------------------------------------------*/
#include <sys/stat.h>
/*----------------------------------------------------------------------------*/

EOSCLIENTNAMESPACE_BEGIN

//#ifdef EOS_GRPC

using grpc::Channel;
using grpc::ClientAsyncResponseReader;
using grpc::ClientAsyncReader;
Expand Down Expand Up @@ -689,7 +684,5 @@ GrpcClient::ExportFs(const eos::rpc::MDResponse& response,
return "";
}

//#endif


EOSCLIENTNAMESPACE_END
#endif
10 changes: 2 additions & 8 deletions client/grpc/GrpcClient.hh
Original file line number Diff line number Diff line change
Expand Up @@ -22,19 +22,14 @@
************************************************************************/

#pragma once

/*----------------------------------------------------------------------------*/
#include "client/Namespace.hh"
#include "common/AssistedThread.hh"
#include <list>
/*----------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------*/

#ifdef EOS_GRPC
#include <grpc++/grpc++.h>
#include "proto/Rpc.grpc.pb.h"

/*----------------------------------------------------------------------------*/

EOSCLIENTNAMESPACE_BEGIN

/**
Expand Down Expand Up @@ -99,6 +94,5 @@ private:
std::map<uint64_t, std::string> tree;
};

#endif

EOSCLIENTNAMESPACE_END
#endif
Loading