nuttx/sched/group/Make.defs
Abhishek Mishra 1014c49881 sched: add supplementary group IDs (setgroups/getgroups/initgroups)
Track supplementary GIDs per task group, wire setgroups/getgroups
syscalls when CONFIG_SCHED_NGROUPS > 0, and honor them in DAC checks
via nxsched_has_gid().  When NGROUPS is 0, libc provides getgroups/
setgroups stubs.  initgroups() fails instead of silently truncating
when membership exceeds CONFIG_SCHED_NGROUPS.

Signed-off-by: Abhishek Mishra <mishra.abhishek2808@gmail.com>
2026-08-12 16:06:03 -03:00

63 lines
2.1 KiB
Text

############################################################################
# sched/group/Make.defs
#
# SPDX-License-Identifier: Apache-2.0
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership. The
# ASF licenses this file to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance with the
# License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
############################################################################
CSRCS += group_create.c group_join.c group_leave.c
CSRCS += group_setupidlefiles.c group_setuptaskfiles.c
CSRCS += group_foreachchild.c group_killchildren.c
ifneq ($(CONFIG_DISABLE_ALL_SIGNALS),y)
CSRCS += group_signal.c
endif
ifeq ($(CONFIG_SCHED_HAVE_PARENT),y)
ifeq ($(CONFIG_SCHED_CHILD_STATUS),y)
CSRCS += group_childstatus.c
endif
else
ifeq ($(CONFIG_SCHED_WAITPID),y)
CSRCS += group_waiter.c
endif
endif
ifeq ($(CONFIG_SCHED_USER_IDENTITY),y)
CSRCS += group_setuid.c group_setgid.c group_getuid.c group_getgid.c
CSRCS += group_seteuid.c group_setegid.c group_geteuid.c group_getegid.c
CSRCS += group_setreuid.c group_setregid.c group_getresuid.c group_getresgid.c
CSRCS += group_setresuid.c group_setresgid.c
CSRCS += group_issetugid.c
ifneq ($(CONFIG_SCHED_NGROUPS),0)
CSRCS += group_setgroups.c group_getgroups.c
endif
endif
ifeq ($(CONFIG_SIG_SIGSTOP_ACTION),y)
CSRCS += group_suspendchildren.c group_continue.c
endif
ifeq ($(CONFIG_MM_KERNEL_HEAP),y)
CSRCS += group_malloc.c group_realloc.c group_zalloc.c group_free.c
endif
# Include group build support
DEPPATH += --dep-path group
VPATH += :group