[collectd] Compiling on HP-UX
Jeff Haney
jah at clan-rum.org
Tue Oct 17 17:13:25 CEST 2006
Hi octo,
It seems that the only include is mntent.h
SYNOPSIS
#include <mntent.h>
FILE *setmntent(const char *path, char *type);
struct mntent *getmntent(FILE *stream);
int getmntent_r(
FILE *stream,
struct mntent *result,
char *buffer,
int buflen);
int addmntent(FILE *stream, struct mntent *mnt);
int delmntent(FILE *stream, struct mntent *mnt);
char *hasmntopt(struct mntent *mnt, const char *opt);
int endmntent(FILE *stream);
I appreciate your help with this. I have collectd running on nine
Redhat machines, no problem. Now I need to get it to run on four HP-UX
boxes. If we can get it to compile on HP-UX then next I want to get it
running on 10 Solaris 6, 7 & 8 boxes. Then I'll be set!
-jeff
-------------- next part --------------
/* @(#)B11.23_LR$Revision: ../hdr/mntent.h@@/main/i80/12 $ */
/*
* File system table, see checklist(4)
*
* Used by dump, mount, umount, swapon, fsck, df, ...
*
*/
#ifndef _MNTENT_INCLUDED /* allow multiple inclusions */
#define _MNTENT_INCLUDED
#ifndef _SYS_STDSYMS_INCLUDED
# include <sys/stdsyms.h>
#endif /* _SYS_STDSYMS_INCLUDED */
#ifdef _INCLUDE_HPUX_SOURCE
#define MNT_CHECKLIST "/etc/fstab"
#define MNT_MNTTAB "/etc/mnttab"
#include <stdio.h>
#ifndef _FAST_SHLIB_CALLS
# if defined(_HP_SHLIB_CALLS) && !defined(__LP64__)
# define _FAST_SHLIB_CALLS
# endif
#endif
#ifdef __cplusplus
extern "C" {
#endif
#define MNTMAXSTR 128
#define MNTTYPE_HFS "hfs" /* HP HFS file system. */
#define MNTTYPE_CDFS "cdfs" /* CD-ROM file system. */
#define MNTTYPE_NFS "nfs" /* NFS Version 2 file system */
#define MNTTYPE_NFS3 "nfs3" /* NFS Version 3 file system */
#define MNTTYPE_CACHEFS "cachefs" /* Cache File System */
#define MNTTYPE_VXFS "vxfs" /* VxFS file system */
#define MNTTYPE_LOFS "lofs" /* Loopback file system */
#define MNTTYPE_SWAP "swap" /* Swap device */
#define MNTTYPE_SWAPFS "swapfs" /* File system swap */
#define MNTTYPE_DUMP "dump" /* Dump file system */
#define MNTTYPE_IGNORE "ignore" /* Ignore this entry */
#define MNTTYPE_DFS "dfs" /* HP DFS file system. */
#define MNTTYPE_AUTOFS "autofs" /* autofs file system */
/*
* WARNING: Any options added here will not show up in /etc/mnttab
* unless they are also added to the update_mnttab(3x) libarary.
*/
#define MNTOPT_DEFAULTS "defaults" /* use all default opts */
#define MNTOPT_RO "ro" /* read only */
#define MNTOPT_RW "rw" /* read/write */
#define MNTOPT_SUID "suid" /* set uid allowed */
#define MNTOPT_NOSUID "nosuid" /* no set uid allowed */
#define MNTOPT_NOAUTO "noauto" /* Don't automatically mount with -a. */
#define MNTOPT_DEV "dev" /* Device ID of the file system mounted */
/*
* Large Files Mount Options
*/
#define MNTOPT_LARGEFILES "largefiles"
#define MNTOPT_NOLARGEFILES "nolargefiles"
/*
* CDCASE mount option
*/
#define MNTOPT_CDCASE "cdcase" /* Support case folding & Vers suppression */
/*
* UFS/HFS specific options
* WARNING: Any options added here will not show up in /etc/mnttab
* unless they are also added to the update_mnttab(3x) libarary.
*/
#define MNTOPT_DELAYED "delayed" /* delayed writes to disk; 700 default*/
#define MNTOPT_BEHIND "behind" /* write async'ly to disk; 800 default*/
#define MNTOPT_FSASYNC "fsasync" /* async update */
#define MNTOPT_NOFSASYNC "nofsasync" /* no async update - default */
/*
* NFS specific options
* WARNING: Any options added here will not show up in /etc/mnttab
* unless they are also added to the update_mnttab(3x) libarary.
*/
#define MNTOPT_BG "bg" /* Retry mount in background */
#define MNTOPT_FG "fg" /* Retry mount in foreground */
#define MNTOPT_RETRY "retry" /* Number of retries allowed. */
#define MNTOPT_RSIZE "rsize" /* Read buffer size in bytes. */
#define MNTOPT_WSIZE "wsize" /* Write buffer size in bytes. */
#define MNTOPT_TIMEO "timeo" /* Timeout in 1/10's of seconds. */
#define MNTOPT_RETRANS "retrans" /* Number of retransmissions. */
#define MNTOPT_PORT "port" /* IP on server for requests. */
#define MNTOPT_SOFT "soft" /* soft mount */
#define MNTOPT_HARD "hard" /* hard mount */
#define MNTOPT_INTR "intr" /* Allow interrupts to hard mounts. */
#define MNTOPT_NOINTR "nointr" /* Don't allow interrupts to hard mounts. */
#define MNTOPT_DEVS "devs" /* Allow device file access */
#define MNTOPT_NODEVS "nodevs" /* Don't allow device file access */
#define MNTOPT_NOAC "noac" /* suppress fress attributes on file open */
#define MNTOPT_NOCTO "nocto" /* suppress attribute & name(lookup) caching */
#define MNTOPT_ACTIMEO "actimeo" /* attr cache timeout (sec) */
#define MNTOPT_ACREGMIN "acregmin" /* min ac timeout for reg files (sec) */
#define MNTOPT_ACREGMAX "acregmax" /* max ac timeout for reg files (sec) */
#define MNTOPT_ACDIRMIN "acdirmin" /* min ac timeout for dirs (sec) */
#define MNTOPT_ACDIRMAX "acdirmax" /* max ac timeout for dirs (sec) */
#define MNTOPT_SEMISOFT "semisoft" /* partial soft, uncommited interface */
#define MNTOPT_GRPID "grpid" /* SysV-compatible gid on create */
#define MNTOPT_REMOUNT "remount" /* Change mount options */
#define MNTOPT_SECURE "secure" /* Secure (AUTH_DES) mounting */
#define MNTOPT_POSIX "posix" /* Get static pathconf for mount */
#define MNTOPT_LLOCK "llock" /* Local locking (no lock manager) */
#define MNTOPT_VERS "vers" /* protocol version number indicator */
#define MNTOPT_PROTO "proto" /* protocol network_id indicator */
#define MNTOPT_SEC "sec" /* Security flavor indicator */
#define MNTOPT_NOPRINT "noprint" /* Do not print messages */
#define MNTOPT_FORCEDIRECTIO "forcedirectio" /* Force DirectIO on all files */
#define MNTOPT_NOFORCEDIRECTIO "noforcedirectio" /* No Force DirectIO */
#define MNTOPT_PUBLIC "public" /* Use NFS public file handle */
#define MNTOPT_OVERLAY "overlay" /* Overlay mount */
#define MNTOPT_DEBUG "debug" /* Turn debug on */
/*
* VxFS-specific options
*/
#define MNTOPT_LOG "log"
#define MNTOPT_DELAYLOG "delaylog"
#define MNTOPT_TMPLOG "tmplog"
#define MNTOPT_NOLOG "nolog"
#define MNTOPT_BLKCLEAR "blkclear"
#define MNTOPT_DATAINLOG "datainlog"
#define MNTOPT_NODATAINLOG "nodatainlog"
#define MNTOPT_SNAPOF "snapof"
#define MNTOPT_SNAPSIZE "snapsize"
#define MNTOPT_MINCACHE "mincache"
#define NMTOPT_CLOSESYNC "closesync"
#define MNTOPT_DIRECT "direct"
#define MNTOPT_DSYNC "dsync"
#define MNTOPT_TMPCACHE "tmpcache"
#define MNTOPT_CONVOSYNC "convosync"
#define MNTOPT_DELAY "delay"
#define MNTOPT_TRANFLUSH "tranflush"
/*
* Device swap options
*/
#define MNTOPT_END "end" /* swap after end of file system- S300 only */
/*
* File system swap options
*/
#define MNTOPT_MIN "min" /* minimum file system swap */
#define MNTOPT_LIM "lim" /* maximum file system swap */
#define MNTOPT_RES "res" /* reserve space for file system */
#define MNTOPT_PRI "pri" /* file system swap priority */
/*
* Quota options
*/
#define MNTOPT_QUOTA "quota" /* Allow disc quotas */
#define MNTOPT_NOQUOTA "noquota" /* Don't allow disc quotas */
/*
* Boot options
*/
#define MNTOPT_BOOT "boot" /* boot-time mounting for diskless */
/*
* Default mode for /etc/mnttab, and default sizes for NFS mount options
*/
#define MNTTAB_MODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH)
#define DEFAULT_WSIZE NFS_MAXDATA /* NFS default defines */
#define DEFAULT_RSIZE NFS_MAXDATA
#define DEFAULT_PORT NFS_PORT
#define DEFAULT_TIMEO 7
#define DEFAULT_RETRANS 4
#define DEFAULT_RETRY 1
#define DEFAULT_ACREGMIN 3
#define DEFAULT_ACREGMAX 60
#define DEFAULT_ACDIRMIN 30
#define DEFAULT_ACDIRMAX 60
struct mntent{
char *mnt_fsname; /* name of mounted file system */
char *mnt_dir; /* file system path prefix */
char *mnt_type; /* MNTTYPE_* */
char *mnt_opts; /* MNTOPT* */
int mnt_freq; /* dump frequency, in days */
int mnt_passno; /* pass number on parallel fsck */
long mnt_time; /* Time this filesystem was mounted */
unsigned short mnt_cnode; /* OBSOLETE */
};
#ifdef _HP_SHLIB_CALLS
# pragma HP_DEFINED_EXTERNAL addmntent,delmntent,getmntent
# pragma HP_DEFINED_EXTERNAL hasmntopt,setmntent,endmntent
#endif /* _HP_SHLIB_CALLS */
#ifdef _FAST_SHLIB_CALLS
# pragma HP_NO_RELOCATION addmntent,delmntent,getmntent
# pragma HP_NO_RELOCATION hasmntopt,setmntent,endmntent
# pragma HP_LONG_RETURN addmntent,delmntent,getmntent
# pragma HP_LONG_RETURN hasmntopt,setmntent,endmntent
#endif /* _FAST_SHLIB_CALLS */
#if defined(__ia64)
/* pragmas needed to support -B protected */
# pragma extern addmntent, delmntent, getmntent
# ifdef _PTHREADS_DRAFT4
# pragma extern getmntent_r
# endif /* _PTHREADS_DRAFT4 */
# pragma extern hasmntopt, setmntent, endmntent
#endif /* __ia64 */
#if defined(__STDC__) || defined(__cplusplus)
extern int addmntent(FILE *, struct mntent *);
extern int delmntent(FILE *, struct mntent *);
extern struct mntent *getmntent(FILE *);
#ifdef _PTHREADS_DRAFT4
extern int getmntent_r(FILE *, struct mntent *, char *, int);
#endif /* _PTHREADS_DRAFT4 */
extern char *hasmntopt(struct mntent *, const char *);
extern FILE *setmntent(const char *, const char *);
extern int endmntent(FILE *);
#else /* not __STDC__ defined(__STDC__) || defined(__cplusplus)*/
extern int addmntent();
extern int delmntent();
extern struct mntent *getmntent();
#ifdef _PTHREADS_DRAFT4
extern int getmntent_r();
#endif /* _PTHREADS_DRAFT4 */
extern char *hasmntopt();
extern FILE *setmntent();
extern int endmntent();
#endif /* else not __STDC__ || __cplusplus */
/* for compatibility: */
#define MNTTAB MNT_CHECKLIST
#define MOUNTED MNT_MNTTAB
#define MNTTYPE_43 MNTTYPE_HFS
#define MNTTYPE_UFS "ufs"
#ifdef __cplusplus
}
#endif
#endif /* _INCLUDE_HPUX_SOURCE */
#endif /* _MNTENT_INCLUDED */
More information about the collectd
mailing list