/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License, Version 1.0 only
* (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
* 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]
*
* CDDL HEADER END
*/
/* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */
/* All Rights Reserved */
/*
* Copyright (c) 1997, by Sun Microsystems, Inc.
* All rights reserved.
*/
#pragma ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.2 */
/*LINTLIBRARY*/
/*
*
* Contains:
* listdev() List attributes defined for a device
*/
/*
* Header files needed:
* <string.h> Standard string definitions
* <devmgmt.h> Device management definitions
* "devtab.h" Local device table definitions
*/
#include <string.h>
#include <devmgmt.h>
#include "devtab.h"
#include <stdlib.h>
/*
* Local Definitions:
*/
/*
* Local, Static data:
*/
/*
* void sortlist(list)
* char **list
*
* This function sorts a list of character strings
* so that the list is ordered alphabetically.
*
* Arguments:
* list The list to be sorted
*
* Returns: void
*/
static void
{
char **qq;
char **rr;
char *t; /* Temp for swapping pointers */
/* If the list isn't empty ... */
if (*list) {
/* Find the last item in the list */
;
--pp;
/*
* Sort 'em by sorting larger and larger portions
* of the list (my CSC101 fails me, I forget what
* this sort is called!) [Where I come from, CS
* is Crop Science...]
*/
t = *rr;
*qq++ = t;
}
}
}
}
/*
* char **listdev(device)
* char *device;
*
* Generate an alphabetized list of attribute names of the
* attributes defined for the device <device>.
*
* Arguments:
* device Device who's attributes are to be listed
*
* Returns: char **
* List of attribute names of the attributes defined for this
* device. (Never empty since all devices have the "alias"
* attribute defined.)
*/
char **
{
/* Automatic data */
int n; /* Temp counter */
/* If the device <device> is defined ... */
/*
* Count the number of attributes defined for the device
* being sure to count the (char *) NULL that terminates
* the list
*/
n = 1;
/* Other attributes, if any */
do
n++;
}
}
}
}
}
do {
}
if (noerror) {
} else {
}
_enddevtab();
/* Fini */
return (rtnval);
}