getsdir.h
上传用户:tianjinjs
上传日期:2007-01-05
资源大小:309k
文件大小:1k
源码类别:

Modem编程

开发平台:

Unix_Linux

  1. /*
  2.  * getsdir.h
  3.  *
  4.  * Datatypes and constants for getsdir() - a function to get and
  5.  * return a sorted directory listing.
  6.  *
  7.  * Copyright (c) 1998 by James S. Seymour (jseymour@jimsun.LinxNet.com)
  8.  *
  9.  * This code is free software; you can redistribute it and/or
  10.  * modify it under the terms of the GNU General Public License
  11.  * as published by the Free Software Foundation; either version
  12.  * 2 of the License, or (at your option) any later version.
  13.  *
  14.  * Note: getsdir() uses "wildmat.c", which has different copyright
  15.  * and licensing conditions.  See the source, Luke.
  16.  */
  17. #include <dirent.h>
  18. typedef struct dirEntry { /* structure of data item */
  19.    char fname[MAXNAMLEN + 1]; /* filename + terminating null */
  20.    time_t time; /* last modification date */
  21.    mode_t mode; /* file mode (dir? etc.) */
  22.    ushort cflags; /* caller field for convenience */
  23. } GETSDIR_ENTRY;
  24. #define GETSDIR_PARNT    0x01 /* include parent dir (..) */
  25. #define GETSDIR_NSORT    0x02 /* sort by name */
  26. #define GETSDIR_TSORT    0x04 /* sort by time (NSORT wins) */
  27. /*
  28.  * the following are only meaningful if NSORT or TSORT are specified
  29.  */
  30. #define GETSDIR_DIRSF    0x08 /* dirs first */
  31. #define GETSDIR_DIRSL    0x10 /* dirs last */
  32. #define GETSDIR_RSORT    0x20 /* reverse sort (does not affect
  33.    DIRSF/DIRSL */
  34. _PROTO(extern int getsdir, (char *dirpath, char *pattern, int sortflags, 
  35.     mode_t modemask, GETSDIR_ENTRY **datptr, int *len));