]> git.ipfire.org Git - thirdparty/util-linux.git/blame - sys-utils/hwclock.h
blkid, hwclock, ldattach: use program_invocation_short_name
[thirdparty/util-linux.git] / sys-utils / hwclock.h
CommitLineData
9abb2685
KZ
1#ifndef HWCLOCK_CLOCK_H
2#define HWCLOCK_CLOCK_H
3
ef71b8f1 4#include <errno.h>
7eda085c 5#include <stdio.h>
66ee8158 6#include <stdlib.h>
7eda085c 7#include <string.h>
7eda085c
KZ
8#include <time.h>
9
b940bae3
KZ
10#include "c.h"
11
7eda085c
KZ
12struct clock_ops {
13 char *interface_name;
ef71b8f1
SK
14 int (*get_permissions) (void);
15 int (*read_hardware_clock) (struct tm * tm);
16 int (*set_hardware_clock) (const struct tm * tm);
17 int (*synchronize_to_clock_tick) (void);
7eda085c
KZ
18};
19
20extern struct clock_ops *probe_for_cmos_clock(void);
21extern struct clock_ops *probe_for_rtc_clock(void);
22extern struct clock_ops *probe_for_kd_clock(void);
23
24typedef int bool;
7eda085c
KZ
25
26/* hwclock.c */
7eda085c 27extern int debug;
4ac41d61 28extern unsigned long epoch_option;
982a4a5d 29extern double time_diff(struct timeval subtrahend, struct timeval subtractor);
7eda085c
KZ
30/* cmos.c */
31extern void set_cmos_epoch(int ARCconsole, int SRM);
32extern void set_cmos_access(int Jensen, int funky_toy);
33
34/* rtc.c */
35extern int get_epoch_rtc(unsigned long *epoch, int silent);
36extern int set_epoch_rtc(unsigned long epoch);
88681c5f 37extern char *rtc_dev_name;
88058a71
KZ
38
39#ifdef HAVE_LIBAUDIT
40extern void hwaudit_exit(int status);
41# define hwclock_exit(_status) hwaudit_exit(_status)
42#else
43# define hwclock_exit(_status) exit(_status)
44#endif
9abb2685 45
ef71b8f1 46#endif /* HWCLOCK_CLOCK_H */