mirror of
https://github.com/drasko/codezero.git
synced 2026-02-27 09:13:13 +01:00
Removed CAP_SHARE_ALL and CAP_GRANT_ALL flags. Currently not used.
The API for sharing and granting of all capabilities has not settled yet, therefore removed.
This commit is contained in:
@@ -15,18 +15,16 @@
|
|||||||
#define CAP_CONTROL_READ 0x00000001
|
#define CAP_CONTROL_READ 0x00000001
|
||||||
#define CAP_CONTROL_SHARE 0x00000002
|
#define CAP_CONTROL_SHARE 0x00000002
|
||||||
#define CAP_CONTROL_GRANT 0x00000003
|
#define CAP_CONTROL_GRANT 0x00000003
|
||||||
#define CAP_CONTROL_REPLICATE 0x00000005
|
#define CAP_CONTROL_REPLICATE 0x00000004
|
||||||
#define CAP_CONTROL_SPLIT 0x00000006
|
#define CAP_CONTROL_SPLIT 0x00000005
|
||||||
#define CAP_CONTROL_DEDUCE 0x00000007
|
#define CAP_CONTROL_DEDUCE 0x00000006
|
||||||
#define CAP_CONTROL_DESTROY 0x00000008
|
#define CAP_CONTROL_DESTROY 0x00000007
|
||||||
|
|
||||||
#define CAP_SHARE_MASK 0x00000003
|
#define CAP_SHARE_MASK 0x00000003
|
||||||
#define CAP_SHARE_SINGLE 0x00000001
|
#define CAP_SHARE_SINGLE 0x00000001
|
||||||
#define CAP_SHARE_ALL 0x00000002
|
|
||||||
|
|
||||||
#define CAP_GRANT_MASK 0x0000000F
|
#define CAP_GRANT_MASK 0x0000000F
|
||||||
#define CAP_GRANT_SINGLE 0x00000001
|
#define CAP_GRANT_SINGLE 0x00000001
|
||||||
#define CAP_GRANT_ALL 0x00000002
|
|
||||||
#define CAP_GRANT_IMMUTABLE 0x00000004
|
#define CAP_GRANT_IMMUTABLE 0x00000004
|
||||||
|
|
||||||
#define CAP_SPLIT_MASK 0x0000000F
|
#define CAP_SPLIT_MASK 0x0000000F
|
||||||
|
|||||||
@@ -69,6 +69,7 @@ int cap_share_single(struct capability *user)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if 0
|
||||||
/* Shares the whole list */
|
/* Shares the whole list */
|
||||||
int cap_share_all(void)
|
int cap_share_all(void)
|
||||||
{
|
{
|
||||||
@@ -76,18 +77,23 @@ int cap_share_all(void)
|
|||||||
¤t->space->cap_list);
|
¤t->space->cap_list);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
int cap_share(struct capability *cap, unsigned int flags)
|
int cap_share(struct capability *cap, unsigned int flags)
|
||||||
{
|
{
|
||||||
if (flags & CAP_SHARE_SINGLE)
|
if (flags & CAP_SHARE_SINGLE)
|
||||||
cap_share_single(cap);
|
cap_share_single(cap);
|
||||||
else if (flags & CAP_SHARE_ALL)
|
|
||||||
cap_share_all();
|
|
||||||
else
|
else
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Currently unused. API hasn't settled.
|
||||||
|
*/
|
||||||
/* Grants all caps */
|
/* Grants all caps */
|
||||||
int cap_grant_all(struct capability *req, unsigned int flags)
|
int cap_grant_all(struct capability *req, unsigned int flags)
|
||||||
{
|
{
|
||||||
@@ -134,6 +140,8 @@ out_err:
|
|||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
int cap_grant_single(struct capability *req, unsigned int flags)
|
int cap_grant_single(struct capability *req, unsigned int flags)
|
||||||
{
|
{
|
||||||
struct capability *cap;
|
struct capability *cap;
|
||||||
@@ -176,8 +184,6 @@ int cap_grant(struct capability *cap, unsigned int flags)
|
|||||||
{
|
{
|
||||||
if (flags & CAP_GRANT_SINGLE)
|
if (flags & CAP_GRANT_SINGLE)
|
||||||
cap_grant_single(cap, flags);
|
cap_grant_single(cap, flags);
|
||||||
else if (flags & CAP_GRANT_ALL)
|
|
||||||
cap_grant_all(cap, flags);
|
|
||||||
else
|
else
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
return 0;
|
return 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user