SEFlow
Home SourceForge FreshMeat |
documentation for the macro "simple_license"This macro defines the basic types, roles, users and permissions to describe a license. It is defined in the file licenses.m4. m4 code: define(`simple_license', `factor_base($1)dnl define(`$1_types', $1_types $1_creator_t $1_t)dnl add_permission($1_free_tX$1_tXfile, getattr relabelto)dnl add_permission($1_free_tX$1_tXdir,relabelto)dnl add_permission($1_tX$1_free_tXfilesystem,associate)dnl add_permission($1_creator_tX$1_creator_tXcapability, chown dac_override fowner fsetid ipc_owner ipc_lock kill mknod net_admin net_bind_service net_raw setgid setuid sys_admin sys_boot sys_chroot sys_module sys_nice sys_ptrace sys_rawio sys_resource sys_time sys_tty_config)dnl add_permission($1_creator_tX$1_creator_tXchr_file,append)dnl add_permission($1_creator_tX$1_creator_tXdir, getattr read search)dnl add_permission($1_creator_tX$1_creator_tXfd, use)dnl add_permission($1_creator_tX$1_creator_tXfile, entrypoint execute getattr read relabelto rename write)dnl add_permission($1_creator_tX$1_creator_tXkey, create)dnl add_permission($1_creator_tX$1_creator_tXlnk_file, getattr read)dnl add_permission($1_creator_tX$1_creator_tXmsg, receive send)dnl add_permission($1_creator_tX$1_creator_tXmsgq, associate create destroy enqueue read unix_read unix_write write)dnl add_permission($1_creator_tX$1_creator_tXnetlink_kobject_uevent_socket, bind create read)dnl add_permission($1_creator_tX$1_creator_tXnetlink_route_socket, bind create getattr nlmsg_read nlmsg_write read setopt write)dnl add_permission($1_creator_tX$1_creator_tXnetlink_selinux_socket, bind create read)dnl add_permission($1_creator_tX$1_creator_tXpacket_socket, bind create getopt ioctl read setopt write)dnl add_permission($1_creator_tX$1_creator_tXpasswd,rootok)dnl add_permission($1_creator_tX$1_creator_tXprocess, execmem fork getattr getpgid getsched ptrace setexec setfscreate setkeycreate setpgid setrlimit setsched sigchld sigkill signal signull transition)dnl add_permission($1_creator_tX$1_creator_tXrawip_socket, create getopt read setopt write)dnl add_permission($1_creator_tX$1_creator_tXsem, associate create destroy read setattr unix_read unix_write write)dnl add_permission($1_creator_tX$1_creator_tXshm, associate create destroy getattr read unix_read unix_write write)dnl add_permission($1_creator_tX$1_creator_tXsock_file,unlink)dnl add_permission($1_creator_tX$1_creator_tXsocket, accept bind connect create getattr getopt ioctl listen read setopt write)dnl add_permission($1_creator_tX$1_creator_tXtcp_socket, accept bind connect create getattr getopt listen read setopt shutdown write)dnl add_permission($1_creator_tX$1_creator_tXudp_socket, bind connect create getattr ioctl read setopt write)dnl add_permission($1_creator_tX$1_creator_tXunix_dgram_socket, bind connect create read sendto write)dnl add_permission($1_creator_tX$1_creator_tXunix_stream_socket, accept bind connect connectto create getattr getopt listen read setopt shutdown write)dnl add_permission($1_creator_tX$1_tXdir, add_name create getattr read remove_name search write)dnl add_permission($1_creator_tX$1_tXfile, create getattr read rename setattr write)dnl add_permission($1_creator_tX$1_free_tXfile,entrypoint)dnl add_permission($1_free_tX$1_creator_tXdir, getattr search)dnl add_permission($1_free_tX$1_creator_tXkey, create)dnl add_permission($1_free_tX$1_creator_tXprocess,transition)dnl dnl define(transitionsX$1_tX$1_free_tXprocess,$1_free_t)dnl define(`$1_roles', $1_roles $1_r $1_creator_r)dnl define(role_typesX$1_r,$1_t)dnl define(role_typesX$1_creator_r,$1_creator_t)dnl allow_role_transitions($1_free_r,$1_creator_r)dnl dnl allow_role_transitions(patsubst($1_roles,` ',`)allow_role_transitions('))dnl define(rolesX$1_u,$1_r)dnl define(rolesX$1_creator_u,$1_creator_r)dnl define(`drm_users', patsubst(patsubst(notmember(` $1_u $1_creator_u ',patsubst(`drm_users',` ',`)notmember(` $1_u $1_creator_u ',')),` $',) $1_u $1_creator_u,^ ,))dnl ') |