54 |
|
#include <dirent.h> |
55 |
|
#endif |
56 |
|
|
57 |
< |
#if defined(SOLARIS) && !defined(HAVE_LIBDEVINFO_H) |
57 |
> |
#if defined(SOLARIS) && defined(HAVE_LIBDEVINFO_H) |
58 |
|
struct map{ |
59 |
|
char *bsd; |
60 |
|
char *svr; |
64 |
|
typedef struct map mapping_t; |
65 |
|
|
66 |
|
static mapping_t *mapping = NULL; |
67 |
+ |
#endif |
68 |
|
|
69 |
+ |
#ifdef SOLARIS |
70 |
|
char *get_svr_from_bsd(char *bsd){ |
71 |
+ |
#ifdef HAVE_LIBDEVINFO_H |
72 |
|
mapping_t *map_ptr; |
73 |
|
for(map_ptr = mapping; map_ptr != NULL; map_ptr = map_ptr->next) |
74 |
|
if(!strcmp(map_ptr->bsd, bsd)) return map_ptr->svr; |
75 |
< |
|
75 |
> |
#endif |
76 |
|
return bsd; |
77 |
|
} |
78 |
+ |
#endif |
79 |
|
|
80 |
+ |
#if defined(SOLARIS) && defined(HAVE_LIBDEVINFO_H) |
81 |
|
void add_mapping(char *bsd, char *svr){ |
82 |
|
mapping_t *map_ptr; |
83 |
|
mapping_t *map_end_ptr; |
474 |
|
* will still work, just no disk mappings. So we will ignore the exit |
475 |
|
* status of this, and carry on merrily. |
476 |
|
*/ |
477 |
< |
#ifdef(HAVE_LIBDEVINFO_H) |
477 |
> |
#ifdef HAVE_LIBDEVINFO_H |
478 |
|
build_mapping(); |
479 |
|
#endif |
480 |
|
#endif |