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:
Bahadir Balban
2009-12-02 16:27:42 +02:00
parent b12349f2e4
commit ae16df6307
2 changed files with 14 additions and 10 deletions

View File

@@ -15,18 +15,16 @@
#define CAP_CONTROL_READ 0x00000001
#define CAP_CONTROL_SHARE 0x00000002
#define CAP_CONTROL_GRANT 0x00000003
#define CAP_CONTROL_REPLICATE 0x00000005
#define CAP_CONTROL_SPLIT 0x00000006
#define CAP_CONTROL_DEDUCE 0x00000007
#define CAP_CONTROL_DESTROY 0x00000008
#define CAP_CONTROL_REPLICATE 0x00000004
#define CAP_CONTROL_SPLIT 0x00000005
#define CAP_CONTROL_DEDUCE 0x00000006
#define CAP_CONTROL_DESTROY 0x00000007
#define CAP_SHARE_MASK 0x00000003
#define CAP_SHARE_SINGLE 0x00000001
#define CAP_SHARE_ALL 0x00000002
#define CAP_GRANT_MASK 0x0000000F
#define CAP_GRANT_SINGLE 0x00000001
#define CAP_GRANT_ALL 0x00000002
#define CAP_GRANT_IMMUTABLE 0x00000004
#define CAP_SPLIT_MASK 0x0000000F

View File

@@ -69,6 +69,7 @@ int cap_share_single(struct capability *user)
return 0;
}
#if 0
/* Shares the whole list */
int cap_share_all(void)
{
@@ -76,18 +77,23 @@ int cap_share_all(void)
&current->space->cap_list);
return 0;
}
#endif
int cap_share(struct capability *cap, unsigned int flags)
{
if (flags & CAP_SHARE_SINGLE)
cap_share_single(cap);
else if (flags & CAP_SHARE_ALL)
cap_share_all();
else
return -EINVAL;
return 0;
}
#if 0
/*
* Currently unused. API hasn't settled.
*/
/* Grants all caps */
int cap_grant_all(struct capability *req, unsigned int flags)
{
@@ -134,6 +140,8 @@ out_err:
return err;
}
#endif
int cap_grant_single(struct capability *req, unsigned int flags)
{
struct capability *cap;
@@ -176,8 +184,6 @@ int cap_grant(struct capability *cap, unsigned int flags)
{
if (flags & CAP_GRANT_SINGLE)
cap_grant_single(cap, flags);
else if (flags & CAP_GRANT_ALL)
cap_grant_all(cap, flags);
else
return -EINVAL;
return 0;