ShellBanner
System:Linux MiraNet 3.0.0-14-generic-pae #23-Ubuntu SMP Mon Nov 21 22:07:10 UTC 2011 i686
Software:Apache. PHP/5.3.6-13ubuntu3.10
ID:uid=65534(nobody) gid=65534(nogroup) groups=65534(nogroup)
Safe Mode:OFF
Open_Basedir:OFF
Freespace:25.51 GB of 70.42 GB (36.23%)
MySQL: ON MSSQL: OFF Oracle: OFF PostgreSQL: OFF Curl: OFF Sockets: ON Fetch: OFF Wget: ON Perl: ON
Disabled Functions: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,

/ usr/ src/ linux-headers-3.0.0-14-generic-pae/ include/ linux/ - drwxr-xr-x

Directory:
Viewing file:     sysfs.h (8.83 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/*
 * sysfs.h - definitions for the device driver filesystem
 *
 * Copyright (c) 2001,2002 Patrick Mochel
 * Copyright (c) 2004 Silicon Graphics, Inc.
 * Copyright (c) 2007 SUSE Linux Products GmbH
 * Copyright (c) 2007 Tejun Heo <teheo@suse.de>
 *
 * Please see Documentation/filesystems/sysfs.txt for more information.
 */

#ifndef _SYSFS_H_
#define _SYSFS_H_

#include <linux/compiler.h>
#include <linux/errno.h>
#include <linux/list.h>
#include <linux/lockdep.h>
#include <linux/kobject_ns.h>
#include <asm/atomic.h>

struct kobject;
struct module;
enum kobj_ns_type;

struct attribute {
    const char        *name;
    mode_t            mode;
#ifdef CONFIG_DEBUG_LOCK_ALLOC
    struct lock_class_key    *key;
    struct lock_class_key    skey;
#endif
};

/**
 *    sysfs_attr_init - initialize a dynamically allocated sysfs attribute
 *    @attr: struct attribute to initialize
 *
 *    Initialize a dynamically allocated struct attribute so we can
 *    make lockdep happy.  This is a new requirement for attributes
 *    and initially this is only needed when lockdep is enabled.
 *    Lockdep gives a nice error when your attribute is added to
 *    sysfs if you don't have this.
 */
#ifdef CONFIG_DEBUG_LOCK_ALLOC
#define sysfs_attr_init(attr)                \
do {                            \
    static struct lock_class_key __key;        \
                            \
    (attr)->key = &__key;                \
} while(0)
#else
#define sysfs_attr_init(attr) do {} while(0)
#endif

struct attribute_group {
    const char        *name;
    mode_t            (*is_visible)(struct kobject *,
                          struct attribute *, int);
    struct attribute    **attrs;
};



/**
 * Use these macros to make defining attributes easier. See include/linux/device.h
 * for examples..
 */

#define __ATTR(_name,_mode,_show,_store) { \
    .attr = {.name = __stringify(_name), .mode = _mode },    \
    .show    = _show,                    \
    .store    = _store,                    \
}

#define __ATTR_RO(_name) { \
    .attr    = { .name = __stringify(_name), .mode = 0444 },    \
    .show    = _name##_show,                    \
}

#define __ATTR_NULL { .attr = { .name = NULL } }

#define attr_name(_attr) (_attr).attr.name

struct file;
struct vm_area_struct;

struct bin_attribute {
    struct attribute    attr;
    size_t            size;
    void            *private;
    ssize_t (*read)(struct file *, struct kobject *, struct bin_attribute *,
            char *, loff_t, size_t);
    ssize_t (*write)(struct file *,struct kobject *, struct bin_attribute *,
             char *, loff_t, size_t);
    int (*mmap)(struct file *, struct kobject *, struct bin_attribute *attr,
            struct vm_area_struct *vma);
};

/**
 *    sysfs_bin_attr_init - initialize a dynamically allocated bin_attribute
 *    @attr: struct bin_attribute to initialize
 *
 *    Initialize a dynamically allocated struct bin_attribute so we
 *    can make lockdep happy.  This is a new requirement for
 *    attributes and initially this is only needed when lockdep is
 *    enabled.  Lockdep gives a nice error when your attribute is
 *    added to sysfs if you don't have this.
 */
#define sysfs_bin_attr_init(bin_attr) sysfs_attr_init(&(bin_attr)->attr)

struct sysfs_ops {
    ssize_t    (*show)(struct kobject *, struct attribute *,char *);
    ssize_t    (*store)(struct kobject *,struct attribute *,const char *, size_t);
};

struct sysfs_dirent;

#ifdef CONFIG_SYSFS

int sysfs_schedule_callback(struct kobject *kobj, void (*func)(void *),
                void *data, struct module *owner);

int __must_check sysfs_create_dir(struct kobject *kobj);
void sysfs_remove_dir(struct kobject *kobj);
int __must_check sysfs_rename_dir(struct kobject *kobj, const char *new_name);
int __must_check sysfs_move_dir(struct kobject *kobj,
                struct kobject *new_parent_kobj);

int __must_check sysfs_create_file(struct kobject *kobj,
                   const struct attribute *attr);
int __must_check sysfs_create_files(struct kobject *kobj,
                   const struct attribute **attr);
int __must_check sysfs_chmod_file(struct kobject *kobj,
                  const struct attribute *attr, mode_t mode);
void sysfs_remove_file(struct kobject *kobj, const struct attribute *attr);
void sysfs_remove_files(struct kobject *kobj, const struct attribute **attr);

int __must_check sysfs_create_bin_file(struct kobject *kobj,
                       const struct bin_attribute *attr);
void sysfs_remove_bin_file(struct kobject *kobj,
               const struct bin_attribute *attr);

int __must_check sysfs_create_link(struct kobject *kobj, struct kobject *target,
                   const char *name);
int __must_check sysfs_create_link_nowarn(struct kobject *kobj,
                      struct kobject *target,
                      const char *name);
void sysfs_remove_link(struct kobject *kobj, const char *name);

int sysfs_rename_link(struct kobject *kobj, struct kobject *target,
            const char *old_name, const char *new_name);

void sysfs_delete_link(struct kobject *dir, struct kobject *targ,
            const char *name);

int __must_check sysfs_create_group(struct kobject *kobj,
                    const struct attribute_group *grp);
int sysfs_update_group(struct kobject *kobj,
               const struct attribute_group *grp);
void sysfs_remove_group(struct kobject *kobj,
            const struct attribute_group *grp);
int sysfs_add_file_to_group(struct kobject *kobj,
            const struct attribute *attr, const char *group);
void sysfs_remove_file_from_group(struct kobject *kobj,
            const struct attribute *attr, const char *group);
int sysfs_merge_group(struct kobject *kobj,
               const struct attribute_group *grp);
void sysfs_unmerge_group(struct kobject *kobj,
               const struct attribute_group *grp);

void sysfs_notify(struct kobject *kobj, const char *dir, const char *attr);
void sysfs_notify_dirent(struct sysfs_dirent *sd);
struct sysfs_dirent *sysfs_get_dirent(struct sysfs_dirent *parent_sd,
                      const void *ns,
                      const unsigned char *name);
struct sysfs_dirent *sysfs_get(struct sysfs_dirent *sd);
void sysfs_put(struct sysfs_dirent *sd);

int __must_check sysfs_init(void);

#else /* CONFIG_SYSFS */

static inline int sysfs_schedule_callback(struct kobject *kobj,
        void (*func)(void *), void *data, struct module *owner)
{
    return -ENOSYS;
}

static inline int sysfs_create_dir(struct kobject *kobj)
{
    return 0;
}

static inline void sysfs_remove_dir(struct kobject *kobj)
{
}

static inline int sysfs_rename_dir(struct kobject *kobj, const char *new_name)
{
    return 0;
}

static inline int sysfs_move_dir(struct kobject *kobj,
                 struct kobject *new_parent_kobj)
{
    return 0;
}

static inline int sysfs_create_file(struct kobject *kobj,
                    const struct attribute *attr)
{
    return 0;
}

static inline int sysfs_create_files(struct kobject *kobj,
                    const struct attribute **attr)
{
    return 0;
}

static inline int sysfs_chmod_file(struct kobject *kobj,
                   const struct attribute *attr, mode_t mode)
{
    return 0;
}

static inline void sysfs_remove_file(struct kobject *kobj,
                     const struct attribute *attr)
{
}

static inline void sysfs_remove_files(struct kobject *kobj,
                     const struct attribute **attr)
{
}

static inline int sysfs_create_bin_file(struct kobject *kobj,
                    const struct bin_attribute *attr)
{
    return 0;
}

static inline void sysfs_remove_bin_file(struct kobject *kobj,
                     const struct bin_attribute *attr)
{
}

static inline int sysfs_create_link(struct kobject *kobj,
                    struct kobject *target, const char *name)
{
    return 0;
}

static inline int sysfs_create_link_nowarn(struct kobject *kobj,
                       struct kobject *target,
                       const char *name)
{
    return 0;
}

static inline void sysfs_remove_link(struct kobject *kobj, const char *name)
{
}

static inline int sysfs_rename_link(struct kobject *k, struct kobject *t,
                    const char *old_name, const char *new_name)
{
    return 0;
}

static inline void sysfs_delete_link(struct kobject *k, struct kobject *t,
                     const char *name)
{
}

static inline int sysfs_create_group(struct kobject *kobj,
                     const struct attribute_group *grp)
{
    return 0;
}

static inline int sysfs_update_group(struct kobject *kobj,
                const struct attribute_group *grp)
{
    return 0;
}

static inline void sysfs_remove_group(struct kobject *kobj,
                      const struct attribute_group *grp)
{
}

static inline int sysfs_add_file_to_group(struct kobject *kobj,
        const struct attribute *attr, const char *group)
{
    return 0;
}

static inline void sysfs_remove_file_from_group(struct kobject *kobj,
        const struct attribute *attr, const char *group)
{
}

static inline int sysfs_merge_group(struct kobject *kobj,
               const struct attribute_group *grp)
{
    return 0;
}

static inline void sysfs_unmerge_group(struct kobject *kobj,
               const struct attribute_group *grp)
{
}

static inline void sysfs_notify(struct kobject *kobj, const char *dir,
                const char *attr)
{
}
static inline void sysfs_notify_dirent(struct sysfs_dirent *sd)
{
}
static inline
struct sysfs_dirent *sysfs_get_dirent(struct sysfs_dirent *parent_sd,
                      const void *ns,
                      const unsigned char *name)
{
    return NULL;
}
static inline struct sysfs_dirent *sysfs_get(struct sysfs_dirent *sd)
{
    return NULL;
}
static inline void sysfs_put(struct sysfs_dirent *sd)
{
}

static inline int __must_check sysfs_init(void)
{
    return 0;
}

#endif /* CONFIG_SYSFS */

#endif /* _SYSFS_H_ */
Command:
Quick Commands:
Upload:
[Read-Only] Max size: 100MB
PHP Filesystem: <@ Ú
Search File:
regexp
Create File:
Overwrite [Read-Only]
View File:
Mass Defacement:
[+] Main Directory: [+] Defacement Url:
LmfaoX Shell - Private Build [BETA] - v0.1 -; Generated: 0.4124 seconds