--- /dev/null
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+
+#include <X11/Xlib.h>
+#include <X11/extensions/sync.h>
+#include <X11/extensions/scrnsaver.h>
+
+Display *get_current_display(void)
+{
+ static Display *dpy = NULL;
+ if(!dpy)
+ {
+ if(!(dpy=XOpenDisplay(NULL)))
+ {
+ fputs("Could not open X11 display.\n", stderr);
+ return NULL;
+ }
+ }
+ return dpy;
+}
+
+void print_screensaver_stats(void)
+{
+ int timeout = 0;
+ int interval = 0;
+ int prefer_blanking = 0;
+ int allow_exposures = 0;
+ int x_get_screen_saver = 0;
+
+ Display *dpy = get_current_display();
+ if(!dpy)
+ {
+ fprintf(stderr, "badness!\n");
+ }
+
+ x_get_screen_saver = XGetScreenSaver(dpy,
+ &timeout,
+ &interval,
+ &prefer_blanking,
+ &allow_exposures);
+ printf("x_get_screen_saver = %d\n", x_get_screen_saver);
+ printf("timeout = %d\n", timeout);
+ printf("interval = %d\n", interval);
+ printf("prefer_blanking = %d\n", prefer_blanking);
+ printf("allow_exposures = %d\n", allow_exposures);
+
+ return;
+}
+
+void call_XForceScreenSaver_with_mode_ScreenSaverReset(void)
+{
+ Display* dpy = get_current_display();
+ if(!dpy)
+ {
+ fprintf(stderr, "badness!\n");
+ }
+ int x_force_screen_saver = 0;
+ // maybe ScreenSaverReset's in the current namespace?
+ return;
+}
+
+int main(int argc, char** argv)
+{
+ Display *dpy = NULL;
+ dpy = get_current_display();
+ if(!dpy)
+ {
+ fprintf(stderr, "badness!\n");
+ }
+ call_XForceScreenSaver_with_mode_ScreenSaverReset();
+ print_screensaver_stats();
+ return 0;
+}