Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
#include <sys/pccard.h> int32_t csx_GetTupleData(client_handle_t ch, tuple_t *tu);
Solaris DDI Specific (Solaris DDI)
Client handle returned from csx_RegisterClient(9F).
Pointer to a tuple_t structure.
This function returns the data portion of a tuple, as returned by the csx_GetFirstTuple(9F) and csx_GetNextTuple(9F) functions.
The structure members of tuple_t are:
The fields are defined as follows:
uint32_t Socket; /* socket number */ uint32_t Attributes; /* tuple attributes*/ cisdata_t DesiredTuple; /* tuple to search for*/ cisdata_t TupleOffset; /* tuple data offset*/ cisdata_t TupleDataMax; /* max tuple data size*/ cisdata_t TupleDataLen; /* actual tuple data length*/ cisdata_t TupleData[CIS_MAX_TUPLE_DATA_LEN];/* tuple body data buffer*/ cisdata_t TupleCode; /* tuple type code*/ cisdata_t TupleLink; /* tuple link */Socket
Not used in Solaris, but for portability with other Card Services implementations, it should be set to the logical socket number.
Initialized by csx_GetFirstTuple(9F) or csx_GetNextTuple(9F); the client must not modify the value in this field.
Initialized by csx_GetFirstTuple(9F) or csx_GetNextTuple(9F); the client must not modify the value in this field.
This field allows partial tuple information to be retrieved, starting anywhere within the tuple.
This field is the size of the tuple data buffer that Card Services uses to return raw tuple data from csx_GetTupleData. It can be larger than the number of bytes in the tuple data body. Card Services ignores any value placed here by the client.
This field is the actual size of the tuple data body. It represents the number of tuple data body bytes returned.
This field is an array of bytes containing the raw tuple data body contents.
Initialized by csx_GetFirstTuple(9F) or csx_GetNextTuple(9F); the client must not modify the value in this field.
Initialized by csx_GetFirstTuple(9F) or csx_GetNextTuple(9F); the client must not modify the value in this field.
Successful operation.
Client handle is invalid.
Data from prior csx_GetFirstTuple(9F) or csx_GetNextTuple(9F) is corrupt.
No PC Card in socket.
No Card Information Structure (CIS) on PC Card.
Card Services was not able to read the tuple from the PC Card.
No PCMCIA hardware installed.
This function may be called from user or kernel context.
csx_GetFirstTuple(9F), csx_ParseTuple(9F), csx_RegisterClient(9F), csx_ValidateCIS(9F), tuple(9S)