!C99Shell v. 1.0 pre-release build #13!

Software: Apache/2.0.54 (Unix) mod_perl/1.99_09 Perl/v5.8.0 mod_ssl/2.0.54 OpenSSL/0.9.7l DAV/2 FrontPage/5.0.2.2635 PHP/4.4.0 mod_gzip/2.0.26.1a 

uname -a: Linux snow.he.net 4.4.276-v2-mono-1 #1 SMP Wed Jul 21 11:21:17 PDT 2021 i686 

uid=99(nobody) gid=98(nobody) groups=98(nobody) 

Safe-mode: OFF (not secure)

/usr/src/linux-2.4.18-xfs-1.1/include/pcmcia/   drwxr-xr-x
Free 318.37 GB of 458.09 GB (69.5%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     cs.h (13.63 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/*
 * cs.h 1.74 2001/10/04 03:15:22
 *
 * The contents of this file are subject to the Mozilla Public License
 * Version 1.1 (the "License"); you may not use this file except in
 * compliance with the License. You may obtain a copy of the License
 * at http://www.mozilla.org/MPL/
 *
 * Software distributed under the License is distributed on an "AS IS"
 * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
 * the License for the specific language governing rights and
 * limitations under the License. 
 *
 * The initial developer of the original code is David A. Hinds
 * <dahinds@users.sourceforge.net>.  Portions created by David A. Hinds
 * are Copyright (C) 1999 David A. Hinds.  All Rights Reserved.
 *
 * Alternatively, the contents of this file may be used under the
 * terms of the GNU General Public License version 2 (the "GPL"), in
 * which case the provisions of the GPL are applicable instead of the
 * above.  If you wish to allow the use of your version of this file
 * only under the terms of the GPL and not to allow others to use
 * your version of this file under the MPL, indicate your decision by
 * deleting the provisions above and replace them with the notice and
 * other provisions required by the GPL.  If you do not delete the
 * provisions above, a recipient may use your version of this file
 * under either the MPL or the GPL.
 */

#ifndef _LINUX_CS_H
#define _LINUX_CS_H

/* For AccessConfigurationRegister */
typedef struct conf_reg_t {
    u_char    Function;
    u_int    Action;
    off_t    Offset;
    u_int    Value;
} conf_reg_t;

/* Actions */
#define CS_READ        1
#define CS_WRITE    2

/* for AdjustResourceInfo */
typedef struct adjust_t {
    u_int    Action;
    u_int    Resource;
    u_int    Attributes;
    union {
    struct memory {
        u_long    Base;
        u_long    Size;
    } memory;
    struct io {
        ioaddr_t    BasePort;
        ioaddr_t    NumPorts;
        u_int    IOAddrLines;
    } io;
    struct irq {
        u_int    IRQ;
    } irq;
    } resource;
} adjust_t;

/* Action field */
#define REMOVE_MANAGED_RESOURCE        1
#define ADD_MANAGED_RESOURCE        2
#define GET_FIRST_MANAGED_RESOURCE    3
#define GET_NEXT_MANAGED_RESOURCE    4
/* Resource field */
#define RES_MEMORY_RANGE        1
#define RES_IO_RANGE            2
#define RES_IRQ                3
/* Attribute field */
#define RES_IRQ_TYPE            0x03
#define RES_IRQ_TYPE_EXCLUSIVE        0
#define RES_IRQ_TYPE_TIME        1
#define RES_IRQ_TYPE_DYNAMIC        2
#define RES_IRQ_CSC            0x04
#define RES_SHARED            0x08
#define RES_RESERVED            0x10
#define RES_ALLOCATED            0x20
#define RES_REMOVED            0x40

typedef struct servinfo_t {
    char    Signature[2];
    u_int    Count;
    u_int    Revision;
    u_int    CSLevel;
    char    *VendorString;
} servinfo_t;

typedef struct event_callback_args_t {
    client_handle_t client_handle;
    void    *info;
    void    *mtdrequest;
    void    *buffer;
    void    *misc;
    void    *client_data;
    struct bus_operations *bus;
} event_callback_args_t;

/* for GetConfigurationInfo */
typedef struct config_info_t {
    u_char    Function;
    u_int    Attributes;
    u_int    Vcc, Vpp1, Vpp2;
    u_int    IntType;
    u_int    ConfigBase;
    u_char    Status, Pin, Copy, Option, ExtStatus;
    u_int    Present;
    u_int    CardValues;
    u_int    AssignedIRQ;
    u_int    IRQAttributes;
    ioaddr_t    BasePort1;
    ioaddr_t    NumPorts1;
    u_int    Attributes1;
    ioaddr_t    BasePort2;
    ioaddr_t    NumPorts2;
    u_int    Attributes2;
    u_int    IOAddrLines;
} config_info_t;

/* For CardValues field */
#define CV_OPTION_VALUE        0x01
#define CV_STATUS_VALUE        0x02
#define CV_PIN_REPLACEMENT    0x04
#define CV_COPY_VALUE        0x08
#define CV_EXT_STATUS        0x10

/* For GetFirst/NextClient */
typedef struct client_req_t {
    socket_t    Socket;
    u_int    Attributes;
} client_req_t;

#define CLIENT_THIS_SOCKET    0x01

/* For RegisterClient */
typedef struct client_reg_t {
    dev_info_t    *dev_info;
    u_int    Attributes;
    u_int    EventMask;
    int        (*event_handler)(event_t event, int priority,
                 event_callback_args_t *);
    event_callback_args_t event_callback_args;
    u_int    Version;
} client_reg_t;

/* ModifyConfiguration */
typedef struct modconf_t {
    u_int    Attributes;
    u_int    Vcc, Vpp1, Vpp2;
} modconf_t;

/* Attributes for ModifyConfiguration */
#define CONF_IRQ_CHANGE_VALID    0x100
#define CONF_VCC_CHANGE_VALID    0x200
#define CONF_VPP1_CHANGE_VALID    0x400
#define CONF_VPP2_CHANGE_VALID    0x800

/* For RequestConfiguration */
typedef struct config_req_t {
    u_int    Attributes;
    u_int    Vcc, Vpp1, Vpp2;
    u_int    IntType;
    u_int    ConfigBase;
    u_char    Status, Pin, Copy, ExtStatus;
    u_char    ConfigIndex;
    u_int    Present;
} config_req_t;

/* Attributes for RequestConfiguration */
#define CONF_ENABLE_IRQ        0x01
#define CONF_ENABLE_DMA        0x02
#define CONF_ENABLE_SPKR    0x04
#define CONF_VALID_CLIENT    0x100

/* IntType field */
#define INT_MEMORY        0x01
#define INT_MEMORY_AND_IO    0x02
#define INT_CARDBUS        0x04
#define INT_ZOOMED_VIDEO    0x08

/* For RequestIO and ReleaseIO */
typedef struct io_req_t {
    ioaddr_t    BasePort1;
    ioaddr_t    NumPorts1;
    u_int    Attributes1;
    ioaddr_t    BasePort2;
    ioaddr_t    NumPorts2;
    u_int    Attributes2;
    u_int    IOAddrLines;
} io_req_t;

/* Attributes for RequestIO and ReleaseIO */
#define IO_SHARED        0x01
#define IO_FIRST_SHARED        0x02
#define IO_FORCE_ALIAS_ACCESS    0x04
#define IO_DATA_PATH_WIDTH    0x18
#define IO_DATA_PATH_WIDTH_8    0x00
#define IO_DATA_PATH_WIDTH_16    0x08
#define IO_DATA_PATH_WIDTH_AUTO    0x10

/* For RequestIRQ and ReleaseIRQ */
typedef struct irq_req_t {
    u_int    Attributes;
    u_int    AssignedIRQ;
    u_int    IRQInfo1, IRQInfo2;
    void    *Handler;
    void    *Instance;
} irq_req_t;

/* Attributes for RequestIRQ and ReleaseIRQ */
#define IRQ_TYPE            0x03
#define IRQ_TYPE_EXCLUSIVE        0x00
#define IRQ_TYPE_TIME            0x01
#define IRQ_TYPE_DYNAMIC_SHARING    0x02
#define IRQ_FORCED_PULSE        0x04
#define IRQ_FIRST_SHARED        0x08
#define IRQ_HANDLE_PRESENT        0x10
#define IRQ_PULSE_ALLOCATED        0x100

/* Bits in IRQInfo1 field */
#define IRQ_MASK        0x0f
#define IRQ_NMI_ID        0x01
#define IRQ_IOCK_ID        0x02
#define IRQ_BERR_ID        0x04
#define IRQ_VEND_ID        0x08
#define IRQ_INFO2_VALID        0x10
#define IRQ_LEVEL_ID        0x20
#define IRQ_PULSE_ID        0x40
#define IRQ_SHARE_ID        0x80

typedef struct eventmask_t {
    u_int    Attributes;
    u_int    EventMask;
} eventmask_t;

#define CONF_EVENT_MASK_VALID    0x01

/* Configuration registers present */
#define PRESENT_OPTION        0x001
#define PRESENT_STATUS        0x002
#define PRESENT_PIN_REPLACE    0x004
#define PRESENT_COPY        0x008
#define PRESENT_EXT_STATUS    0x010
#define PRESENT_IOBASE_0    0x020
#define PRESENT_IOBASE_1    0x040
#define PRESENT_IOBASE_2    0x080
#define PRESENT_IOBASE_3    0x100
#define PRESENT_IOSIZE        0x200

/* For GetMemPage, MapMemPage */
typedef struct memreq_t {
    u_int    CardOffset;
    page_t    Page;
} memreq_t;

/* For ModifyWindow */
typedef struct modwin_t {
    u_int    Attributes;
    u_int    AccessSpeed;
} modwin_t;

/* For RequestWindow */
typedef struct win_req_t {
    u_int    Attributes;
    u_long    Base;
    u_int    Size;
    u_int    AccessSpeed;
} win_req_t;

/* Attributes for RequestWindow */
#define WIN_ADDR_SPACE        0x0001
#define WIN_ADDR_SPACE_MEM    0x0000
#define WIN_ADDR_SPACE_IO    0x0001
#define WIN_MEMORY_TYPE        0x0002
#define WIN_MEMORY_TYPE_CM    0x0000
#define WIN_MEMORY_TYPE_AM    0x0002
#define WIN_ENABLE        0x0004
#define WIN_DATA_WIDTH        0x0018
#define WIN_DATA_WIDTH_8    0x0000
#define WIN_DATA_WIDTH_16    0x0008
#define WIN_DATA_WIDTH_32    0x0010
#define WIN_PAGED        0x0020
#define WIN_SHARED        0x0040
#define WIN_FIRST_SHARED    0x0080
#define WIN_USE_WAIT        0x0100
#define WIN_STRICT_ALIGN    0x0200
#define WIN_MAP_BELOW_1MB    0x0400
#define WIN_PREFETCH        0x0800
#define WIN_CACHEABLE        0x1000
#define WIN_BAR_MASK        0xe000
#define WIN_BAR_SHIFT        13

/* Attributes for RegisterClient */
#define INFO_MASTER_CLIENT    0x01
#define INFO_IO_CLIENT        0x02
#define INFO_MTD_CLIENT        0x04
#define INFO_MEM_CLIENT        0x08
#define MAX_NUM_CLIENTS        3

#define INFO_CARD_SHARE        0x10
#define INFO_CARD_EXCL        0x20

typedef struct cs_status_t {
    u_char    Function;
    event_t     CardState;
    event_t    SocketState;
} cs_status_t;

typedef struct error_info_t {
    int        func;
    int        retcode;
} error_info_t;

/* Special stuff for binding drivers to sockets */
typedef struct bind_req_t {
    socket_t    Socket;
    u_char    Function;
    dev_info_t    *dev_info;
} bind_req_t;

/* Flag to bind to all functions */
#define BIND_FN_ALL    0xff

typedef struct mtd_bind_t {
    socket_t    Socket;
    u_int    Attributes;
    u_int    CardOffset;
    dev_info_t    *dev_info;
} mtd_bind_t;

/* Events */
#define CS_EVENT_PRI_LOW        0
#define CS_EVENT_PRI_HIGH        1

#define CS_EVENT_WRITE_PROTECT        0x000001
#define CS_EVENT_CARD_LOCK        0x000002
#define CS_EVENT_CARD_INSERTION        0x000004
#define CS_EVENT_CARD_REMOVAL        0x000008
#define CS_EVENT_BATTERY_DEAD        0x000010
#define CS_EVENT_BATTERY_LOW        0x000020
#define CS_EVENT_READY_CHANGE        0x000040
#define CS_EVENT_CARD_DETECT        0x000080
#define CS_EVENT_RESET_REQUEST        0x000100
#define CS_EVENT_RESET_PHYSICAL        0x000200
#define CS_EVENT_CARD_RESET        0x000400
#define CS_EVENT_REGISTRATION_COMPLETE    0x000800
#define CS_EVENT_RESET_COMPLETE        0x001000
#define CS_EVENT_PM_SUSPEND        0x002000
#define CS_EVENT_PM_RESUME        0x004000
#define CS_EVENT_INSERTION_REQUEST    0x008000
#define CS_EVENT_EJECTION_REQUEST    0x010000
#define CS_EVENT_MTD_REQUEST        0x020000
#define CS_EVENT_ERASE_COMPLETE        0x040000
#define CS_EVENT_REQUEST_ATTENTION    0x080000
#define CS_EVENT_CB_DETECT        0x100000
#define CS_EVENT_3VCARD            0x200000
#define CS_EVENT_XVCARD            0x400000

/* Return codes */
#define CS_SUCCESS        0x00
#define CS_BAD_ADAPTER        0x01
#define CS_BAD_ATTRIBUTE    0x02
#define CS_BAD_BASE        0x03
#define CS_BAD_EDC        0x04
#define CS_BAD_IRQ        0x06
#define CS_BAD_OFFSET        0x07
#define CS_BAD_PAGE        0x08
#define CS_READ_FAILURE        0x09
#define CS_BAD_SIZE        0x0a
#define CS_BAD_SOCKET        0x0b
#define CS_BAD_TYPE        0x0d
#define CS_BAD_VCC        0x0e
#define CS_BAD_VPP        0x0f
#define CS_BAD_WINDOW        0x11
#define CS_WRITE_FAILURE    0x12
#define CS_NO_CARD        0x14
#define CS_UNSUPPORTED_FUNCTION    0x15
#define CS_UNSUPPORTED_MODE    0x16
#define CS_BAD_SPEED        0x17
#define CS_BUSY            0x18
#define CS_GENERAL_FAILURE    0x19
#define CS_WRITE_PROTECTED    0x1a
#define CS_BAD_ARG_LENGTH    0x1b
#define CS_BAD_ARGS        0x1c
#define CS_CONFIGURATION_LOCKED    0x1d
#define CS_IN_USE        0x1e
#define CS_NO_MORE_ITEMS    0x1f
#define CS_OUT_OF_RESOURCE    0x20
#define CS_BAD_HANDLE        0x21

#define CS_BAD_TUPLE        0x40

#ifdef __KERNEL__

/*
 *  The main Card Services entry point
 */

enum service {
    AccessConfigurationRegister, AddSocketServices,
    AdjustResourceInfo, CheckEraseQueue, CloseMemory, CopyMemory,
    DeregisterClient, DeregisterEraseQueue, GetCardServicesInfo,
    GetClientInfo, GetConfigurationInfo, GetEventMask,
    GetFirstClient, GetFirstPartion, GetFirstRegion, GetFirstTuple,
    GetNextClient, GetNextPartition, GetNextRegion, GetNextTuple,
    GetStatus, GetTupleData, MapLogSocket, MapLogWindow, MapMemPage,
    MapPhySocket, MapPhyWindow, ModifyConfiguration, ModifyWindow,
    OpenMemory, ParseTuple, ReadMemory, RegisterClient,
    RegisterEraseQueue, RegisterMTD, RegisterTimer,
    ReleaseConfiguration, ReleaseExclusive, ReleaseIO, ReleaseIRQ,
    ReleaseSocketMask, ReleaseWindow, ReplaceSocketServices,
    RequestConfiguration, RequestExclusive, RequestIO, RequestIRQ,
    RequestSocketMask, RequestWindow, ResetCard, ReturnSSEntry,
    SetEventMask, SetRegion, ValidateCIS, VendorSpecific,
    WriteMemory, BindDevice, BindMTD, ReportError,
    SuspendCard, ResumeCard, EjectCard, InsertCard, ReplaceCIS,
    GetFirstWindow, GetNextWindow, GetMemPage
};

#ifdef IN_CARD_SERVICES
extern int CardServices(int func, void *a1, void *a2, void *a3);
#else
extern int CardServices(int func, ...);
#endif

int pcmcia_access_configuration_register(client_handle_t handle, conf_reg_t *reg);
int pcmcia_bind_device(bind_req_t *req);
int pcmcia_bind_mtd(mtd_bind_t *req);
int pcmcia_deregister_client(client_handle_t handle);
int pcmcia_get_configuration_info(client_handle_t handle, config_info_t *config);
int pcmcia_get_card_services_info(servinfo_t *info);
int pcmcia_get_first_client(client_handle_t *handle, client_req_t *req);
int pcmcia_get_next_client(client_handle_t *handle, client_req_t *req);
int pcmcia_get_window(window_handle_t *handle, int idx, win_req_t *req);
int pcmcia_get_first_window(window_handle_t *win, win_req_t *req);
int pcmcia_get_next_window(window_handle_t *win, win_req_t *req);
int pcmcia_get_status(client_handle_t handle, cs_status_t *status);
int pcmcia_get_mem_page(window_handle_t win, memreq_t *req);
int pcmcia_map_mem_page(window_handle_t win, memreq_t *req);
int pcmcia_modify_configuration(client_handle_t handle, modconf_t *mod);
int pcmcia_modify_window(window_handle_t win, modwin_t *req);
int pcmcia_register_client(client_handle_t *handle, client_reg_t *req);
int pcmcia_release_configuration(client_handle_t handle);
int pcmcia_release_io(client_handle_t handle, io_req_t *req);
int pcmcia_release_irq(client_handle_t handle, irq_req_t *req);
int pcmcia_release_window(window_handle_t win);
int pcmcia_request_configuration(client_handle_t handle, config_req_t *req);
int pcmcia_request_io(client_handle_t handle, io_req_t *req);
int pcmcia_request_irq(client_handle_t handle, irq_req_t *req);
int pcmcia_request_window(client_handle_t *handle, win_req_t *req, window_handle_t *wh);
int pcmcia_reset_card(client_handle_t handle, client_req_t *req);
int pcmcia_suspend_card(client_handle_t handle, client_req_t *req);
int pcmcia_resume_card(client_handle_t handle, client_req_t *req);
int pcmcia_eject_card(client_handle_t handle, client_req_t *req);
int pcmcia_insert_card(client_handle_t handle, client_req_t *req);
int pcmcia_set_event_mask(client_handle_t handle, eventmask_t *mask);
int pcmcia_report_error(client_handle_t handle, error_info_t *err);
struct pci_bus *pcmcia_lookup_bus(client_handle_t handle);

/* rsrc_mgr.c */
int pcmcia_adjust_resource_info(client_handle_t handle, adjust_t *adj);

#endif /* __KERNEL__ */

#endif /* _LINUX_CS_H */

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 1.0 pre-release build #13 powered by Captain Crunch Security Team | http://ccteam.ru | Generation time: 0.0417 ]--