Hello community, here is the log from the commit of package afflib for openSUSE:Factory checked in at 2012-03-17 13:20:00 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/afflib (Old) and /work/SRC/openSUSE:Factory/.afflib.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "afflib", Maintainer is "" Changes: -------- --- /work/SRC/openSUSE:Factory/afflib/afflib.changes 2012-02-01 09:57:03.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.afflib.new/afflib.changes 2012-03-17 13:20:05.000000000 +0100 @@ -1,0 +2,25 @@ +Thu Mar 8 23:11:09 UTC 2012 - greg.freem...@gmail.com + +- upgrade to v3.6.15 + * configure.ac: incorporated Greg Freemyer's patch to address some + ncurses problems. + * lib/utils.h: created virtual destructore + * configure.ac: added AC_PROG_CXX + * tools/affxml.cpp (main): removed unused bflag variable + * lib/vnode_afd.cpp: max() is now always defined, even on windows. + * lib/aftimer.h (aftimer::eta_time): added std:: before string + * lib/utils.h: added virtual destructor for seginfo + * lib/afflib_pages.cpp (af_get_pagesize): having af_page_size() as + a macro was causing problems, so now there is both af_page_size + and af_get_pagesize, both of which do the same. Please use af_get_pagesize. + * aftimer.h (timestamp): updated aftimer for higher resolution on win32 + * lib/afflib.cpp (af_get_pagesize): created af_get_pagesize, which + for some reason was missing. + * lib/afflib.h: added int af_get_pagesize(AFFILE *af); + +------------------------------------------------------------------- +Mon Feb 13 17:22:48 UTC 2012 - greg.freem...@gmail.com + +- use the %{__make} %{?_smp_mflags} macro in the specfile + +------------------------------------------------------------------- Old: ---- afflib-3.6.12.tar.gz New: ---- afflib-3.6.15.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ afflib.spec ++++++ --- /var/tmp/diff_new_pack.ofs3qV/_old 2012-03-17 13:20:10.000000000 +0100 +++ /var/tmp/diff_new_pack.ofs3qV/_new 2012-03-17 13:20:10.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package afflib # -# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,9 +18,10 @@ Summary: Library and tools for working with the Advanced Forensics Format Group: System/Libraries + Name: afflib -Version: 3.6.12 -Release: 1 +Version: 3.6.15 +Release: 0 License: BSD-4-Clause Url: http://afflib.org/ Source: %{name}-%{version}.tar.gz @@ -28,7 +29,19 @@ Patch1: afflib-3.6.12-no-strict-aliasing.patch Patch2: afflib-3.6.12-fix-sha256-display.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build -BuildRequires: autoconf automake fuse-devel gcc-c++ gettext-tools libcurl-devel libexpat-devel libopenssl-devel libtool ncurses-devel python-devel readline-devel zlib-devel +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: fuse-devel +BuildRequires: gcc-c++ +BuildRequires: gettext-tools +BuildRequires: libcurl-devel +BuildRequires: libexpat-devel +BuildRequires: libopenssl-devel +BuildRequires: libtool +BuildRequires: ncurses-devel +BuildRequires: python-devel +BuildRequires: readline-devel +BuildRequires: zlib-devel %description The Advanced Forensics Format (AFF) is an openly specified, extensible @@ -108,7 +121,7 @@ %build %configure --enable-s3 --enable-fuse --enable-python -make %{?_smp_flags} +%{__make} %{?_smp_mflags} %install %make_install ++++++ afflib-3.6.12.tar.gz -> afflib-3.6.15.tar.gz ++++++ ++++ 34888 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/ChangeLog new/afflib-3.6.15/ChangeLog --- old/afflib-3.6.12/ChangeLog 2011-05-24 00:08:21.000000000 +0200 +++ new/afflib-3.6.15/ChangeLog 2011-12-02 15:28:05.000000000 +0100 @@ -1,3 +1,56 @@ +2011-12-02 Simson Garfinkel <simsong@alphonse-mucha> + + * configure.ac: increased version number to 3.6.15 + +2011-11-26 Simson Garfinkel <sims...@it151636.ern.nps.edu> + + * configure.ac: incorporated Greg Freemyer's patch to address some + ncurses problems. + +2011-11-24 Simson Garfinkel <slgarfin@submit-0.local> + + * lib/utils.h: created virtual destructore + +2011-11-21 Simson Garfinkel <simsong@Alphonse-Mucha.local> + + * configure.ac: added AC_PROG_CXX + +2011-11-18 Simson Garfinkel <simsong@FC15> + + * tools/affxml.cpp (main): removed unused bflag variable + + * lib/vnode_afd.cpp: max() is now always defined, even on windows. + +2011-11-01 Simson Garfinkel <sims...@it150660.ern.nps.edu> + + * lib/aftimer.h (aftimer::eta_time): added std:: before string + + * configure.ac: updated version counter to 3.6.14 + +2011-11-01 Simson Garfinkel <slgarfin@submit-0.local> + + * lib/utils.h: added virtual destructor for seginfo + +2011-09-28 Simson Garfinkel <sims...@arlington-8-30-77-137.ncr.vt.edu> + + * configure.ac: incremented version counter to 3.6.13 + + * lib/afflib_pages.cpp (af_get_pagesize): having af_page_size() as + a macro was causing problems, so now there is both af_page_size + and af_get_pagesize, both of which do the same. Please use af_get_pagesize. + +2011-09-27 Simson Garfinkel <simsong@Alphonse-Mucha.local> + + * aftimer.h (timestamp): updated aftimer for higher resolution on win32 + +2011-09-18 Simson Garfinkel <sims...@imac3.home> + + * lib/afflib.cpp (af_get_pagesize): created af_get_pagesize, which + for some reason was missing. + + * lib/afflib.h: added int af_get_pagesize(AFFILE *af); + + 2011-05-04 Simson Garfinkel <sims...@alphonse-mucha.home> * configure.ac: increased version number to 3.6.11, overcomes recent problems. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/affconfig.h.in new/afflib-3.6.15/affconfig.h.in --- old/afflib-3.6.12/affconfig.h.in 2011-05-24 00:08:29.000000000 +0200 +++ new/afflib-3.6.15/affconfig.h.in 2011-12-02 15:28:10.000000000 +0100 @@ -404,6 +404,9 @@ /* Define to 1 if the system has the type `_Bool'. */ #undef HAVE__BOOL +/* Define to 1 if you have the <_mingw.h> header file. */ +#undef HAVE__MINGW_H + /* Define to the sub-directory in which libtool stores uninstalled libraries. */ #undef LT_OBJDIR diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/afflib.spec new/afflib-3.6.15/afflib.spec --- old/afflib-3.6.12/afflib.spec 2011-05-24 00:12:40.000000000 +0200 +++ new/afflib-3.6.15/afflib.spec 2011-12-02 15:28:30.000000000 +0100 @@ -1,5 +1,5 @@ Name: afflib -Version: 3.6.12 +Version: 3.6.15 Release: 1 Summary: Library to support the Advanced Forensic Format Group: System Environment/Libraries diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/configure.ac new/afflib-3.6.15/configure.ac --- old/afflib-3.6.12/configure.ac 2011-05-23 23:59:38.000000000 +0200 +++ new/afflib-3.6.15/configure.ac 2011-12-02 15:27:59.000000000 +0100 @@ -4,8 +4,7 @@ # See http://autotoolset.sourceforge.net/tutorial.html # and http://www.openismus.com/documents/linux/automake/automake.shtml - -AC_INIT([AFFLIB],[3.6.12],[b...@afflib.org]) +AC_INIT([AFFLIB],[3.6.15],[b...@afflib.org]) AM_INIT_AUTOMAKE AM_MAINTAINER_MODE @@ -19,6 +18,7 @@ # Programs that we will be using AC_PROG_CC +AC_PROG_CXX AC_PROG_INSTALL # Turn off shared libraries during beta-testing, since they @@ -81,7 +81,7 @@ # Specific headers that I plan to use -AC_CHECK_HEADERS([arpa/inet.h assert.h ctype.h dmalloc.h err.h errno.h fcntl.h getopt.h inttypes.h linux/fs.h malloc.h ncurses/term.h netinet/in.h regex.h signal.h stdint.h stdio.h stdlib.h string.h sys/cdefs.h sys/disk.h sys/file.h sys/ioctl.h sys/ioctl.h sys/param.h sys/param.h sys/socket.h sys/signal.h sys/stat.h sys/time.h sys/types.h sys/vfs.h sysexits.h term.h time.h unistd.h zlib.h]) +AC_CHECK_HEADERS([arpa/inet.h assert.h ctype.h dmalloc.h err.h errno.h fcntl.h getopt.h inttypes.h linux/fs.h malloc.h ncurses/term.h netinet/in.h regex.h signal.h stdint.h stdio.h stdlib.h string.h sys/cdefs.h sys/disk.h sys/file.h sys/ioctl.h sys/ioctl.h sys/param.h sys/param.h sys/socket.h sys/signal.h sys/stat.h sys/time.h sys/types.h sys/vfs.h sysexits.h term.h time.h unistd.h zlib.h _mingw.h]) AC_CHECK_LIB([regex],[regcomp]) # see if we need -lregex @@ -118,6 +118,7 @@ AC_CHECK_LIB([ncurses],[initscr],, AC_MSG_RESULT([ncurses not installed])) AC_CHECK_LIB([z],[uncompress],, AC_MSG_ERROR([zlib not installed; cannot continue. Try adding zlib-dev or zlib1g-dev.])) AC_CHECK_LIB([rt],[aio_error64]) +AC_SEARCH_LIBS(tgetent, termlib termcap tinfo curses ncurses) AC_CHECK_FUNCS(putp tputs tgoto tgetstr tgetnum gotorc beep endwin setupterm printw) ################################################################ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/lib/afflib.h new/afflib-3.6.15/lib/afflib.h --- old/afflib-3.6.12/lib/afflib.h 2011-03-18 13:46:16.000000000 +0100 +++ new/afflib-3.6.15/lib/afflib.h 2011-11-23 03:02:15.000000000 +0100 @@ -174,9 +174,9 @@ /* navigating within the data segments as if they were a single file */ #ifdef _WIN32 -SSIZE_T af_read(AFFILE *af,unsigned char *buf,SSIZE_T count); +SSIZE_T af_read(AFFILE *af,unsigned char *buf,SSIZE_T count); #else -ssize_t af_read(AFFILE *af,unsigned char *buf,ssize_t count); +ssize_t af_read(AFFILE *af,unsigned char *buf,ssize_t count); #endif uint64_t af_seek(AFFILE *af,int64_t pos,int whence); // returns new position uint64_t af_tell(AFFILE *af); @@ -198,9 +198,10 @@ int af_identify(AFFILE *af); // returns type of AFFILE pointer /* Accessor Functions */ -int64_t af_get_imagesize(AFFILE *af); // byte # of last mapped byte in image, or size of device; +int64_t af_get_imagesize(AFFILE *af); // byte # of last mapped byte in image, or size of device; // returns -1 if error -int af_set_acquisition_date(AFFILE *af,time_t t); // sets AF_ACQUISITION_DATE +int af_get_pagesize(AFFILE *af); // returns page size, or -1 +int af_set_acquisition_date(AFFILE *af,time_t t); // sets AF_ACQUISITION_DATE #define af_imagesize(af) af_get_imagesize(af) // backwards compatiability int af_get_segq(AFFILE *af,const char *name,int64_t *quad);/* Get/set 8-byte values */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/lib/afflib_i.h new/afflib-3.6.15/lib/afflib_i.h --- old/afflib-3.6.12/lib/afflib_i.h 2011-04-06 15:42:58.000000000 +0200 +++ new/afflib-3.6.15/lib/afflib_i.h 2011-11-23 03:02:15.000000000 +0100 @@ -126,7 +126,7 @@ #endif #ifdef WIN32 -#if !defined(__MINGW_H) +#if !defined(HAVE__MINGW_H) #pragma warning(disable: 4996) /* Don't warn on Windows about using POSIX open() instead of _open() */ #endif #include <malloc.h> @@ -154,12 +154,12 @@ #define S_ISDIR(m)(((m) & 0170000) == 0040000) #endif -#if !defined(__MINGW_H) +#if !defined(HAVE__MINGW_H) #define ftruncate(fd,size) _chsize_s(fd,size) #define MAXPATHLEN 1024 #endif -#if defined(__MINGW_H) +#if defined(HAVE__MINGW_H) #ifndef ftello #define ftello ftello64 #endif @@ -252,7 +252,7 @@ #endif -#if defined(WIN32) && !defined(__MINGW_H) +#if defined(WIN32) && !defined(HAVE__MINGW_H) /**************************************************************** *** Windows emulation of opendir()/readdir() *** From php @@ -616,7 +616,7 @@ * Note: pagename to string translation happens inside afflib.cpp, not inside * the vnode driver. */ -#define af_page_size(af) (af_get_pagesize(af)) /* backwards compatability */ +int af_page_size(AFFILE *af); // legacy (now is af_get_pagesize) void af_read_sizes(AFFILE *af); // sets up values if we can get them. int af_set_pagesize(AFFILE *af,uint32_t pagesize); // sets the pagesize; fails with -1 if imagesize >=0 int af_set_sectorsize(AFFILE *AF,int sectorsize); // fails with -1 if imagesize>=0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/lib/afflib_pages.cpp new/afflib-3.6.15/lib/afflib_pages.cpp --- old/afflib-3.6.12/lib/afflib_pages.cpp 2011-03-18 13:46:16.000000000 +0100 +++ new/afflib-3.6.15/lib/afflib_pages.cpp 2011-11-23 03:02:15.000000000 +0100 @@ -99,6 +99,11 @@ return af->image_pagesize; } +int af_get_pagesize(AFFILE *af) +{ + return af->image_pagesize; +} + /* af_set_sectorsize: * Sets the sectorsize. * Fails with -1 if imagesize >=0 unless these changes permitted @@ -198,7 +203,7 @@ size_t page_len=0; if (af_trace){ - fprintf(af_trace,"af_get_page(%p,pagenum=%"I64d",buf=%p,bytes=%zu)\n",af,pagenum,data,*bytes); + fprintf(af_trace,"af_get_page(%p,pagenum=%"I64d",buf=%p,bytes=%u)\n",af,pagenum,data,(int)*bytes); } /* Find out the size of the segment and if it is compressed or not. @@ -293,8 +298,8 @@ #ifdef USE_LZMA case AF_PAGE_COMP_ALG_LZMA: res = lzma_uncompress(data,bytes,compressed_data,compressed_data_len); - if (af_trace) fprintf(af_trace," LZMA decompressed page %"I64d". %zd bytes => %zd bytes\n", - pagenum,compressed_data_len,*bytes); + if (af_trace) fprintf(af_trace," LZMA decompressed page %"I64d". %d bytes => %u bytes\n", + pagenum,(int)compressed_data_len,(int)*bytes); switch(res){ case 0:break; // OK case 1:(*af->error_reporter)("LZMA header error decompressing segment %"I64d"\n",pagenum); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/lib/afflib_stream.cpp new/afflib-3.6.15/lib/afflib_stream.cpp --- old/afflib-3.6.12/lib/afflib_stream.cpp 2010-05-19 03:39:47.000000000 +0200 +++ new/afflib-3.6.15/lib/afflib_stream.cpp 2011-11-23 03:02:15.000000000 +0100 @@ -53,6 +53,13 @@ *** Internal Functions. ****************************************************************/ +#ifdef _WIN32 +#define ASIZE SSIZE_T +#else +#define ASIZE ssize_t +#endif + + /* * af_set_maxsize * Sets the maxsize. @@ -101,12 +108,12 @@ return ret; } -ssize_t af_read(AFFILE *af,unsigned char *buf,ssize_t count) +extern "C" ASIZE af_read(AFFILE *af,unsigned char *buf,ASIZE count) { int total = 0; AF_WRLOCK(af); // wrlock because cache may change - if (af_trace) fprintf(af_trace,"af_read(%p,%p,%zd) (pos=%"I64d")\n",af,buf,count,af->pos); + if (af_trace) fprintf(af_trace,"af_read(%p,%p,%d) (pos=%"I64d")\n",af,buf,(int)count,af->pos); if (af->v->read){ // check for bypass int r = (af->v->read)(af, buf, af->pos, count); if(r>0) af->pos += r; @@ -200,7 +207,7 @@ { AF_WRLOCK(af); if (af_trace){ - fprintf(af_trace,"af_write(af=%p,buf=%p,count=%zd) pos=%"I64d"\n", af,buf,count,af->pos); + fprintf(af_trace,"af_write(af=%p,buf=%p,count=%d) pos=%"I64d"\n", af,buf,(int)count,af->pos); } /* Invalidate caches */ af_invalidate_vni_cache(af); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/lib/afflib_util.cpp new/afflib-3.6.15/lib/afflib_util.cpp --- old/afflib-3.6.12/lib/afflib_util.cpp 2011-01-01 15:42:44.000000000 +0100 +++ new/afflib-3.6.15/lib/afflib_util.cpp 2011-11-23 03:02:15.000000000 +0100 @@ -131,8 +131,6 @@ bytes--; charcount++; // how many characters - bool add_spaces = false; - if(flag & AF_HEXBUF_SPACE2) add_spaces = true; if((flag & AF_HEXBUF_SPACE4) && charcount%2==0){ *dst++ = ' '; *dst = '\000'; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/lib/aftimer.h new/afflib-3.6.15/lib/aftimer.h --- old/afflib-3.6.12/lib/aftimer.h 2011-01-12 16:30:43.000000000 +0100 +++ new/afflib-3.6.15/lib/aftimer.h 2011-11-29 02:08:30.000000000 +0100 @@ -1,6 +1,5 @@ -#ifndef __TIMER_H__ -#define __TIMER_H__ - +#ifndef __AFTIMER_H__ +#define __AFTIMER_H__ #ifdef __cplusplus #ifndef WIN32 @@ -15,44 +14,58 @@ #include <string> class aftimer { - bool used; // was this timer used? struct timeval t0; bool running; long total_sec; long total_usec; double lap_time_; // time from when we last did a "stop" public: - aftimer(); - time_t tstart(); - void start(); - void stop(); - double elapsed_seconds(); // - double lap_time(); + aftimer():t0(),running(false),total_sec(0),total_usec(0),lap_time_(0){} + + void start(); // start the timer + void stop(); // stop the timer + + time_t tstart() { return t0.tv_sec;} // time we started + double elapsed_seconds(); // how long timer has been running, total + double lap_time(); // how long the timer is running this time double eta(double fraction_done); // calculate ETA in seconds, given fraction std::string hms(long t); // turn a number of seconds into h:m:s std::string elapsed_text(); /* how long we have been running */ - std::string eta_text(double fraction_done); + std::string eta_text(double fraction_done); // h:m:s + std::string eta_time(double fraction_done); // the actual time }; -inline aftimer::aftimer() -{ - running = false; - total_sec = 0; - total_usec = 0; - lap_time_ = 0; -} - +/* This code in part from + * http://social.msdn.microsoft.com/Forums/en/vcgeneral/thread/430449b3-f6dd-4e18-84de-eebd26a8d668 + */ -inline time_t aftimer::tstart() -{ - return t0.tv_sec; -} +#ifdef WIN32 +# include <winsock2.h> +# include <windows.h> +# ifndef DELTA_EPOCH_IN_MICROSECS +# if defined(_MSC_VER) || defined(_MSC_EXTENSIONS) +# define DELTA_EPOCH_IN_MICROSECS 11644473600000000Ui64 +# else +# define DELTA_EPOCH_IN_MICROSECS 11644473600000000ULL +# endif +# endif +#endif inline void timestamp(struct timeval *t) { #ifdef WIN32 - t->tv_sec = time(0); - t->tv_usec = 0; /* need to fix */ + FILETIME ft; + GetSystemTimeAsFileTime(&ft); + unsigned __int64 tmpres = 0; + tmpres |= ft.dwHighDateTime; + tmpres <<= 32; + tmpres |= ft.dwLowDateTime; + + /*converting file time to unix epoch*/ + tmpres -= DELTA_EPOCH_IN_MICROSECS; + tmpres /= 10; /*convert into microseconds*/ + t->tv_sec = (long)(tmpres / 1000000UL); + t->tv_usec = (long)(tmpres % 1000000UL); #else gettimeofday(t,NULL); #endif @@ -121,14 +134,20 @@ return hms((int)elapsed_seconds()); } +/** + * returns the number of seconds until the job is complete. + */ inline double aftimer::eta(double fraction_done) { double t = elapsed_seconds(); - if(t==0) return -1; // can't figure it out - if(fraction_done==0) return -1; // can't figure it out + if(t<=0) return -1; // can't figure it out + if(fraction_done<=0) return -1; // can't figure it out return (t * 1.0/fraction_done - t); } +/** + * Retuns the number of hours:minutes:seconds until the job is done. + */ inline std::string aftimer::eta_text(double fraction_done) { double e = eta(fraction_done); @@ -136,6 +155,24 @@ return hms((long)e); } +/** + * Returns the time when data is due. + */ +inline std::string aftimer::eta_time(double fraction_done) +{ + time_t when = time_t(eta(fraction_done)) + time(0); + struct tm tm; +#ifdef HAVE_LOCALTIME_R + localtime_r(&when,&tm); +#else + tm = *localtime(&when); +#endif + + char buf[64]; + snprintf(buf,sizeof(buf),"%02d:%02d:%02d",tm.tm_hour,tm.tm_min,tm.tm_sec); + return std::string(buf); +} + #endif #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/lib/lzma_glue.cpp new/afflib-3.6.15/lib/lzma_glue.cpp --- old/afflib-3.6.12/lib/lzma_glue.cpp 2008-05-13 01:53:37.000000000 +0200 +++ new/afflib-3.6.15/lib/lzma_glue.cpp 2011-06-17 01:17:58.000000000 +0200 @@ -15,7 +15,6 @@ #include "LzmaRamDecode.h" } - class CInMemoryStream: public ISequentialInStream, public CMyUnknownImp { public: const unsigned char *buf; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/lib/utils.h new/afflib-3.6.15/lib/utils.h --- old/afflib-3.6.12/lib/utils.h 2011-01-29 21:48:49.000000000 +0100 +++ new/afflib-3.6.15/lib/utils.h 2011-11-26 23:49:01.000000000 +0100 @@ -62,6 +62,7 @@ bool inline operator==(const class seginfo &b) const { return name == b.name; } + virtual ~seginfo(){}; }; /* the seglist provides AFF internal functions and tools an easy way to get @@ -75,6 +76,7 @@ bool has_signed_segments(); int get_seglist(AFFILE *af); seglist(){} + virtual ~seglist(){} seglist(AFFILE *af){ get_seglist(af); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/lib/vnode_afd.cpp new/afflib-3.6.15/lib/vnode_afd.cpp --- old/afflib-3.6.12/lib/vnode_afd.cpp 2011-03-18 13:46:16.000000000 +0100 +++ new/afflib-3.6.15/lib/vnode_afd.cpp 2011-11-23 03:02:15.000000000 +0100 @@ -19,7 +19,7 @@ #endif -#if defined(WIN32) and !defined(__MINGW_H) +#if defined(WIN32) and !defined(HAVE__MINGW_H) /********************************************************************** * Implement dirent-style opendir/readdir/rewinddir/closedir on Win32 * @@ -418,7 +418,7 @@ } -#ifndef WIN32 +#if !defined(WIN32) || defined(HAVE__MINGW_H) static uint64_t max(uint64_t a,uint64_t b) { return a > b ? a : b; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/lib/vnode_aff.cpp new/afflib-3.6.15/lib/vnode_aff.cpp --- old/afflib-3.6.12/lib/vnode_aff.cpp 2011-03-18 13:46:16.000000000 +0100 +++ new/afflib-3.6.15/lib/vnode_aff.cpp 2011-11-23 03:02:15.000000000 +0100 @@ -45,7 +45,7 @@ #ifdef KERNEL_LIBRARY aff_write_seg_no_data(af,AF_IGNORE,0,bytes); #else - if(af_trace) fprintf(af_trace,"aff_write_ignore2(%p,%zd)\n",af,bytes); + if(af_trace) fprintf(af_trace,"aff_write_ignore2(%p,%d)\n",af,(int)bytes); unsigned char *invalidate_data = (unsigned char *)calloc(bytes,1); aff_write_seg(af,AF_IGNORE,0,invalidate_data,bytes); // overwrite with NULLs free(invalidate_data); @@ -58,7 +58,7 @@ int64_t startpos = ftello(af->aseg); // remember start position int r = 0; - if(af_trace) fprintf(af_trace,"aff_write_ignore(%p,%zd)\n",af,bytes); + if(af_trace) fprintf(af_trace,"aff_write_ignore(%p,%d)\n",af,(int)bytes); /* First write the ignore */ r = aff_write_ignore2(af,bytes); @@ -110,8 +110,8 @@ int aff_write_seg(AFFILE *af, const char *segname,uint32_t arg,const u_char *data,size_t datalen) { - if(af_trace) fprintf(af_trace,"aff_write_seg(%p,%s,%"PRIu32",%p,len=%zu)\n", - af,segname,arg,data,datalen); + if(af_trace) fprintf(af_trace,"aff_write_seg(%p,%s,%"PRIu32",%p,len=%u)\n", + af,segname,arg,data,(int)datalen); struct af_segment_head segh; struct af_segment_tail segt; @@ -140,8 +140,8 @@ aff_toc_update(af,segname,ftello(af->aseg),datalen); - if(af_trace) fprintf(af_trace,"aff_write_seg: putting segment %s (datalen=%zd) offset=%"PRId64"\n", - segname,datalen,ftello(af->aseg)); + if(af_trace) fprintf(af_trace,"aff_write_seg: putting segment %s (datalen=%d) offset=%"PRId64"\n", + segname,(int)datalen,ftello(af->aseg)); if(fwrite(&segh,sizeof(segh),1,af->aseg)!=1) return -10; if(fwrite(segname,1,segname_len,af->aseg)!=segname_len) return -11; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/tools/affcat.cpp new/afflib-3.6.15/tools/affcat.cpp --- old/afflib-3.6.12/tools/affcat.cpp 2011-03-18 13:46:13.000000000 +0100 +++ new/afflib-3.6.15/tools/affcat.cpp 2011-11-23 03:02:15.000000000 +0100 @@ -195,7 +195,7 @@ } int count = fwrite(data,1,datalen,stdout); if(count!=(ssize_t)datalen){ - fprintf(stderr,"fwrite(buf,1,%zd,outfile) only wrote %d bytes\n",datalen,count); + fprintf(stderr,"fwrite(buf,1,%d,outfile) only wrote %d bytes\n",(int)datalen,count); } free(data); return 0; @@ -331,13 +331,12 @@ int main(int argc,char **argv) { - int bflag, ch; + int ch; #ifdef SIGINFO signal(SIGINFO,sig_info); #endif - bflag = 0; while ((ch = getopt(argc, argv, "s:S:p:lLh?dqnvr:")) != -1) { switch (ch) { case 's': diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/tools/affcompare.cpp new/afflib-3.6.15/tools/affcompare.cpp --- old/afflib-3.6.12/tools/affcompare.cpp 2011-03-18 13:46:13.000000000 +0100 +++ new/afflib-3.6.15/tools/affcompare.cpp 2011-11-23 03:02:15.000000000 +0100 @@ -339,7 +339,7 @@ err(1,"Cannot read page %"I64d" from %s",pagenum,af_filename(af2)); if(data1_len != data2_len){ - printf("page %"I64d" size %zd != size %zd\n",pagenum,data1_len,data2_len); + printf("page %"I64d" size %d != size %d\n",pagenum,(int)data1_len,(int)data2_len); return 1; } @@ -748,14 +748,13 @@ int main(int argc,char **argv) { - int bflag, ch; + int ch; int opt_recurse=0; #ifdef SIGINFO signal(SIGINFO,sig_info); #endif - bflag = 0; while ((ch = getopt(argc, argv, "P:Vabcempqrsh?v")) != -1) { switch (ch) { case 'P': opt_page = atoi(optarg); break; @@ -786,7 +785,7 @@ recurse(dir1,dir2); if(errors.size()>0){ fprintf(stderr,"================================\n"); - fprintf(stderr,"%zd affcompare errors:\n",errors.size()); + fprintf(stderr,"%d affcompare errors:\n",(int)errors.size()); for(vector<string>::const_iterator i=errors.begin(); i!=errors.end(); i++){ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/tools/affconvert.cpp new/afflib-3.6.15/tools/affconvert.cpp --- old/afflib-3.6.12/tools/affconvert.cpp 2011-03-18 04:46:58.000000000 +0100 +++ new/afflib-3.6.15/tools/affconvert.cpp 2011-11-23 03:02:15.000000000 +0100 @@ -550,11 +550,13 @@ } /* Make a copy of the a_out filename if we can get it */ +#ifdef HAVE_UTIMES char *a_out_fn=0; // output filename, to remember for utimes const char *a_ = af_filename(a_out); // remember the output filename if(a_){ a_out_fn = strdup(a_); // make a copy of it } +#endif if(af_close(a_out)) err(1,"af_close(a_out)"); if(!opt_quiet){ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/tools/affcrypto.cpp new/afflib-3.6.15/tools/affcrypto.cpp --- old/afflib-3.6.12/tools/affcrypto.cpp 2011-03-18 04:46:58.000000000 +0100 +++ new/afflib-3.6.15/tools/affcrypto.cpp 2011-11-23 03:02:15.000000000 +0100 @@ -291,7 +291,7 @@ int main(int argc,char **argv) { - int bflag, ch; + int ch; const char *old_passphrase=0; const char *new_passphrase=0; const char *check_passphrase = 0; @@ -319,7 +319,6 @@ #endif } - bflag = 0; int opt_change = 0; const char *home = getenv("HOME"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/tools/affinfo.cpp new/afflib-3.6.15/tools/affinfo.cpp --- old/afflib-3.6.12/tools/affinfo.cpp 2011-05-08 02:18:32.000000000 +0200 +++ new/afflib-3.6.15/tools/affinfo.cpp 2011-11-23 03:02:15.000000000 +0100 @@ -445,7 +445,7 @@ memset(output_line,0,sizeof(output_line)); /* Now append the arg and the data len */ - sprintf(output_line,"%-24s %8"PRIu32" %8zd ",segname,arg,data_len); + sprintf(output_line,"%-24s %8"PRIu32" %8d ",segname,arg,(int)data_len); if(opt_no_preview){ printf("%s\n",output_line); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/tools/affix.cpp new/afflib-3.6.15/tools/affix.cpp --- old/afflib-3.6.12/tools/affix.cpp 2011-03-18 04:46:58.000000000 +0100 +++ new/afflib-3.6.15/tools/affix.cpp 2011-11-23 03:02:15.000000000 +0100 @@ -232,12 +232,11 @@ int main(int argc,char **argv) { - int bflag, ch; + int ch; setvbuf(stdout,0,_IONBF,0); // turn off buffering /* Figure out how many cols the screen has... */ - bflag = 0; while ((ch = getopt(argc, argv, "yh?v")) != -1) { switch (ch) { case 'y': diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/tools/affverify.cpp new/afflib-3.6.15/tools/affverify.cpp --- old/afflib-3.6.12/tools/affverify.cpp 2011-03-18 04:46:58.000000000 +0100 +++ new/afflib-3.6.15/tools/affverify.cpp 2011-11-23 03:02:15.000000000 +0100 @@ -4,6 +4,11 @@ * Verify the digital signature on a signed file */ +#ifdef WIN32 +# include <winsock2.h> +# include <windows.h> +#endif + #include "affconfig.h" #include "afflib.h" #include "afflib_i.h" @@ -509,9 +514,8 @@ int main(int argc,char **argv) { - int bflag, ch; + int ch; - bflag = 0; while ((ch = getopt(argc, argv, "ach?vV")) != -1) { switch (ch) { case 'a': opt_all = 1; break; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/tools/affxml.cpp new/afflib-3.6.15/tools/affxml.cpp --- old/afflib-3.6.12/tools/affxml.cpp 2011-03-18 13:46:13.000000000 +0100 +++ new/afflib-3.6.15/tools/affxml.cpp 2011-11-23 03:02:15.000000000 +0100 @@ -324,12 +324,11 @@ int main(int argc,char **argv) { - int bflag, ch; + int ch; const char *infile; /* Figure out how many cols the screen has... */ - bflag = 0; while ((ch = getopt(argc, argv, "xj:h?Vs")) != -1) { switch (ch) { case 'j': diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/afflib-3.6.12/win32/affconfig.h new/afflib-3.6.15/win32/affconfig.h --- old/afflib-3.6.12/win32/affconfig.h 2011-05-24 00:12:44.000000000 +0200 +++ new/afflib-3.6.15/win32/affconfig.h 2011-12-02 15:31:44.000000000 +0100 @@ -117,5 +117,5 @@ #define HAVE_SYS_STAT_H 1 #define HAVE_SYS_TYPES_H 1 #define HAVE_ZLIB_H 1 -#define PACKAGE_VERSION "3.6.12" +#define PACKAGE_VERSION "3.6.15" typedef SSIZE_T ssize_t; -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org