aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-lh7a40x
Commit message (Expand)AuthorAge
* ARM: 5871/1: arch/arm: Fix build failure for lpd7a404_defconfig caused by mis...Peter Hüwe2010-01-09
* ARM: fix lh7a40x buildRussell King2009-12-13
* tree-wide: fix assorted typos all over the placeAndré Goddard Rosa2009-12-04
* [ARM] pass reboot command line to arch_reset()Russell King2009-03-19
* arm: struct device - replace bus_id with dev_name(), dev_set_name()Kay Sievers2009-01-06
* Merge branch 'clks' into develRussell King2008-11-30
|\
| * [ARM] lh7a40x: convert to simple clk APIRussell King2008-11-30
| * [ARM] lh7a40x: clocks - cleanupRussell King2008-11-30
* | [ARM] Add a common typesafe __io implementationRussell King2008-11-30
* | [ARM] lh7a40x: avoid polluting the kernel's namespaceRussell King2008-11-28
* | [ARM] remove a common set of __virt_to_bus definitionsNicolas Pitre2008-11-28
|/
* Merge branch 'pxa-all' into develRussell King2008-10-09
|\
| * [ARM] 5298/1: Drop desc_handle_irq()Dmitry Baryshkov2008-10-09
* | [ARM] mm: allow LH7A40x to use sparsememRussell King2008-10-01
* | [ARM] Convert asm/io.h to linux/io.hRussell King2008-09-06
|/
* [ARM] 5191/1: ARM: remove CVS keywordsAdrian Bunk2008-08-16
* [ARM] Move include/asm-arm/arch-* to arch/arm/*/include/machRussell King2008-08-07
* [ARM] Remove asm/hardware.h, use asm/arch/hardware.h insteadRussell King2008-08-07
* [ARM] fix lh7a40x/kev7a400 buildRussell King2008-04-20
* [ARM] Fix timer damage from d3d74453c34f8fd87674a8cf5b8a327c68f22e99Russell King2008-01-28
* [ARM] spelling fixesSimon Arlott2007-05-20
* Add IRQF_IRQPOLL flag on armBernhard Walle2007-05-08
* [ARM] Remove needless linux/ptrace.h includesRussell King2007-04-21
* Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-armLinus Torvalds2006-12-07
|\
| * [ARM] Remove compatibility layer for ARM irqsRussell King2006-11-30
* | Fix misc Kconfig typosMatt LaPlante2006-11-29
|/
* [ARM] Comment out missing configuration symbolsRussell King2006-10-24
* [PATCH] one more ARM IRQ fixAdrian Bunk2006-10-20
* Initial blind fixup for arm for irq changesLinus Torvalds2006-10-06
* Remove all inclusions of <linux/config.h>Dave Jones2006-10-04
* Attack of "the the"s in archMatt LaPlante2006-10-03
* [ARM] 3739/1: genirq updates: irq_chip, add and use irq_chip.nameDavid Brownell2006-08-01
* [PATCH] ARM: fixup irqflags breakage after ARM genirq mergeThomas Gleixner2006-07-02
* [ARM] 3700/1: ARM: Convert lh7a40x to generic irq handlingThomas Gleixner2006-07-01
* Remove obsolete #include <linux/config.h>Jörn Engel2006-06-30
* [ARM] 3405/1: lpd7a40x: CPLD ssp driverMarc Singer2006-06-18
* [ARM] 3404/1: lpd7a40x: AMBA CLCD supportMarc Singer2006-06-18
* [ARM] 3401/1: lpd7a40x: platform updateMarc Singer2006-06-18
* [ARM] 3400/1: lpd7a40x: platform headers updateMarc Singer2006-06-18
* [ARM] Remove asm/arch/irq.hRussell King2006-03-21
* [ARM] 3260/1: remove phys_ram from struct machine_desc (part 2)Nicolas Pitre2006-01-13
* Create platform_device.h to contain all the platform device details.Russell King2005-10-29
* [ARM] 2986/1: Replace map_desc.physical with map_desc.pfn: LH7A40xDeepak Saxena2005-10-28
* [ARM] Wrap calls to descriptor handlersRussell King2005-09-04
* [PATCH] ARM: Remove machine description macrosRussell King2005-07-03
* [PATCH] ARM: Add SA_TIMER flag to timer interruptsRussell King2005-06-26
* Linux-2.6.12-rc2v2.6.12-rc2Linus Torvalds2005-04-16



















                                                                             
 

                                                           

                                                                     
                                                                              
 






                           


                         
                  





                                             

                          

                                           
                         
                          
                                                       


                          


                                             

                          
                 

                   

                          
                                                                                




                                    

                          

                               
                                        
                                                                          

                                      

                       
/*
 *   fs/cifs/cifsacl.h
 *
 *   Copyright (c) International Business Machines  Corp., 2007
 *   Author(s): Steve French (sfrench@us.ibm.com)
 *
 *   This library is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU Lesser General Public License as published
 *   by the Free Software Foundation; either version 2.1 of the License, or
 *   (at your option) any later version.
 *
 *   This library is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
 *   the GNU Lesser General Public License for more details.
 *
 *   You should have received a copy of the GNU Lesser General Public License
 *   along with this library; if not, write to the Free Software
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
 */

#ifndef _CIFSACL_H
#define _CIFSACL_H


#define NUM_AUTHS 6 /* number of authority fields */
#define NUM_SUBAUTHS 5 /* number of sub authority fields */
#define NUM_WK_SIDS 7 /* number of well known sids */
#define SIDNAMELENGTH 20 /* long enough for the ones we care about */
#define DEFSECDESCLEN 192 /* sec desc len contaiting a dacl with three aces */

#define READ_BIT        0x4
#define WRITE_BIT       0x2
#define EXEC_BIT        0x1

#define UBITSHIFT	6
#define GBITSHIFT	3

#define ACCESS_ALLOWED	0
#define ACCESS_DENIED	1

struct cifs_ntsd {
	__le16 revision; /* revision level */
	__le16 type;
	__le32 osidoffset;
	__le32 gsidoffset;
	__le32 sacloffset;
	__le32 dacloffset;
} __attribute__((packed));

struct cifs_sid {
	__u8 revision; /* revision level */
	__u8 num_subauth;
	__u8 authority[6];
	__le32 sub_auth[5]; /* sub_auth[num_subauth] */
} __attribute__((packed));

struct cifs_acl {
	__le16 revision; /* revision level */
	__le16 size;
	__le32 num_aces;
} __attribute__((packed));

struct cifs_ace {
	__u8 type;
	__u8 flags;
	__le16 size;
	__le32 access_req;
	struct cifs_sid sid; /* ie UUID of user or group who gets these perms */
} __attribute__((packed));

struct cifs_wksid {
	struct cifs_sid cifssid;
	char sidname[SIDNAMELENGTH];
} __attribute__((packed));

#ifdef CONFIG_CIFS_EXPERIMENTAL

extern int match_sid(struct cifs_sid *);
extern int compare_sids(const struct cifs_sid *, const struct cifs_sid *);

#endif /*  CONFIG_CIFS_EXPERIMENTAL */

#endif /* _CIFSACL_H */