misc/79008: add option for pom to specify EPOCH

Gerhard Gonter g.gonter at ieee.org
Sat Mar 19 00:30:04 PST 2005


>Number:         79008
>Category:       misc
>Synopsis:       add option for pom to specify EPOCH
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sat Mar 19 08:30:02 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Gerhard Gonter
>Release:        FreeBSD 5.3-STABLE i386
>Organization:
none
>Environment:
System: FreeBSD alcoholix.wu-wien.ac.at 5.3-STABLE FreeBSD 5.3-STABLE #0: Sun Dec 26 12:56:10 CET 2004 root at alcoholix.wu-wien.ac.at:/usr/obj/usr/src/sys/GENERIC i386
Architecture: i386

>Description:

	The pom command only displays the output for the current
	time.  This submit allows the user to supply a different
	time expressed in EPOCH to obtain results for that time.

>How-To-Repeat:

>Fix:

diff -ruN pom.orig/pom.6 pom/pom.6
--- pom.orig/pom.6	Sun Jul 15 09:49:21 2001
+++ pom/pom.6	Sun Nov 28 22:02:07 2004
@@ -44,3 +44,16 @@
 utility displays the current phase of the moon.
 Useful for selecting software completion target dates and predicting
 managerial behavior.
+.PP
+.\" FIX ME!  This should look slightly different!
+The options are as follows:
+.BL -tag -width indent
+.PP
+.I \-r seconds
+.PP
+display phase of moon for the given time (in EPOCH).  This is usefull
+to explain past or predict future managerial behavior.
+.SH HISTORY    
+The
+.I pom
+command was derived from software posted to USENET.
diff -ruN pom.orig/pom.c pom/pom.c
--- pom.orig/pom.c	Mon May  5 11:52:25 2003
+++ pom/pom.c	Sun Nov 28 10:03:21 2004
@@ -60,6 +60,8 @@
 #include <time.h>
 #include <stdio.h>
 #include <math.h>
+#include <stdlib.h>
+#include <string.h>
 
 #ifndef	PI
 #define	PI	  3.14159265358979323846
@@ -76,16 +78,32 @@
 static void	adj360(double *);
 static double	dtor(double);
 static double	potm(double);
+int main_pom (time_t);
 
-int
-main()
+#ifndef NO_MAIN
+int main (argc, argv)
+  int argc;
+  char *argv[];
 {
 	time_t tt;
+	(void) time(&tt);
+
+	if (argc > 2 && strcmp (argv [1], "-r") == 0)
+          tt= atol (argv[2]);
+
+	return main_pom (tt);
+
+}
+#endif /* NO_MAIN */
+
+int
+main_pom(tt)
+  time_t tt;
+{
 	struct tm *GMT;
 	double days, today, tomorrow;
 	int cnt;
 
-	(void) time(&tt);
 	GMT = gmtime(&tt);
 	days = (GMT->tm_yday + 1) + ((GMT->tm_hour +
 	    (GMT->tm_min / 60.0) + (GMT->tm_sec / 3600.0)) / 24.0);

>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list