static int selinux_quotactl ( int cmds , int type , int id , struct super_block * sb ) {
 const struct cred * cred = current_cred ( ) ;
 int rc = 0 ;
 if ( ! sb ) return 0 ;
 switch ( cmds ) {
 case Q_SYNC : case Q_QUOTAON : case Q_QUOTAOFF : case Q_SETINFO : case Q_SETQUOTA : rc = superblock_has_perm ( cred , sb , FILESYSTEM__QUOTAMOD , NULL ) ;
 break ;
 case Q_GETFMT : case Q_GETINFO : case Q_GETQUOTA : rc = superblock_has_perm ( cred , sb , FILESYSTEM__QUOTAGET , NULL ) ;
 break ;
 default : rc = 0 ;
 break ;
 }
 return rc ;
 }
static int selinux_quotactl ( int cmds , int type , int id , struct super_block * sb ) {
 const struct cred * cred = current_cred ( ) ;
 int rc = 0 ;
 if ( ! sb ) return 0 ;
 switch ( cmds ) {
 case Q_SYNC : case Q_QUOTAON : case Q_QUOTAOFF : case Q_SETINFO : case Q_SETQUOTA : rc = superblock_has_perm ( cred , sb , FILESYSTEM__QUOTAMOD , NULL ) ;
 break ;
 case Q_GETFMT : case Q_GETINFO : case Q_GETQUOTA : rc = superblock_has_perm ( cred , sb , FILESYSTEM__QUOTAGET , NULL ) ;
 break ;
 default : rc = 0 ;
 break ;
 }
 return rc ;
 }