debian/0000775000000000000000000000000013120241501007155 5ustar debian/control0000664000000000000000000000127311746574111010605 0ustar Source: tnef Section: text Priority: optional Maintainer: Kevin Coyner Standards-Version: 3.9.3 Build-Depends: debhelper (>= 8), autotools-dev, quilt Homepage: http://sourceforge.net/projects/tnef Package: tnef Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Recommends: mime-support Description: Tool to unpack MIME application/ms-tnef attachments TNEF is a program for unpacking MIME attachments of type "application/ms-tnef". This is typcially a Microsoft only attachment. . The TNEF program allows one to unpack the attachments which were encapsulated into the TNEF attachment, thus alleviating the need to use Microsoft Outlook to view the attachment. debian/docs0000664000000000000000000000004611746574052010056 0ustar NEWS TODO doc/file-format.tex doc/FAQ debian/README.source0000664000000000000000000000036211746574061011363 0ustar This package uses quilt to manage all modifications to the upstream source. Changes are stored in the source package as diffs in debian/patches and applied during the build. See /usr/share/doc/quilt/README.source for a detailed explanation. debian/changelog0000664000000000000000000002007113120241332011031 0ustar tnef (1.4.9-1+deb8u3build0.14.04.1) trusty-security; urgency=medium * fake sync from Debian -- Marc Deslauriers Wed, 14 Jun 2017 10:06:18 -0400 tnef (1.4.9-1+deb8u3) jessie-security; urgency=high * Non-maintainer upload by the Wheezy LTS Team. * CVE-2017-8911 (Closes: #862442) An integer underflow has been identified in the unicode_to_utf8() function in tnef 1.4.14. This might lead to invalid write operations, controlled by an attacker. -- Thorsten Alteholz Mon, 29 May 2017 15:03:02 +0200 tnef (1.4.9-1+deb8u2) jessie-security; urgency=high * Non-maintainer upload by the Wheezy LTS Team. * while fixing the CVEs, upstream introduced a regression fix-regression-1.patch and fix-regression-2.patch take care of that (Closes: #857342) -- Thorsten Alteholz Fri, 24 Mar 2017 19:03:02 +0100 tnef (1.4.9-1+deb8u1) jessie-security; urgency=high * Non-maintainer upload by the Wheezy LTS Team. (Closes: #856117) * CVE-2017-6307 An issue was discovered in tnef before 1.4.13. Two OOB Writes have been identified in src/mapi_attr.c:mapi_attr_read(). These might lead to invalid read and write operations, controlled by an attacker. * CVE-2017-6308 An issue was discovered in tnef before 1.4.13. Several Integer Overflows, which can lead to Heap Overflows, have been identified in the functions that wrap memory allocation. * CVE-2017-6309 An issue was discovered in tnef before 1.4.13. Two type confusions have been identified in the parse_file() function. These might lead to invalid read and write operations, controlled by an attacker. * CVE-2017-6310 An issue was discovered in tnef before 1.4.13. Four type confusions have been identified in the file_add_mapi_attrs() function. These might lead to invalid read and write operations, controlled by an attacker. -- Thorsten Alteholz Mon, 27 Feb 2017 19:03:02 +0100 tnef (1.4.9-1) unstable; urgency=low * New upstream release. * Simplified debian/rules. -- Kevin Coyner Fri, 27 Apr 2012 19:58:46 +0000 tnef (1.4.8-2) unstable; urgency=low * Bump Standards-Version to 3.9.3 in debian/control. No changes. * Removed unneeded option in debian/rules and fixes FTBFS. (Closes: #666358) -- Kevin Coyner Fri, 27 Apr 2012 18:54:09 +0000 tnef (1.4.8-1) unstable; urgency=low * New upstream release. * debian/control: + Add Build-Depends on quilt. + Bump debhelper to 8. + Bump Standards-Version to 3.9.1. No changes. * Update debian/copyright to be machine readable. * Bump debian/compat to 8. * Add patch to fix man page. (Closes: #619895). Thanks to Pietro Battiston. * Add README.source. -- Kevin Coyner Tue, 19 Apr 2011 14:48:40 +0000 tnef (1.4.7-1) unstable; urgency=low * New upstream release. * Updated Standards-Version to 3.8.4. No changes. * debian/control: + Add ${misc:Depends} to debian/control. + Updated debhelper version to 7.4~. * debian/compat updated from 5 to 7. * Changed dh_clean -k to dh_prep in debian/rules. * Update debian/copyright to reflect changes in author's dates. -- Kevin Coyner Thu, 11 Feb 2010 00:15:08 +0000 tnef (1.4.6-1) unstable; urgency=low * New upstream release. * Updated Standards-Version to 3.8.3. No changes. * Small cleanup of debian/copyright. -- Kevin Coyner Mon, 05 Oct 2009 21:29:36 -0400 tnef (1.4.5-1) unstable; urgency=low * New upstream release (Closes: 457382) * debian/control + Moved Homepage from long description to its own field. + Updated Standards-Version to 3.8.0 + Removed obsolete lines in long description (Closes: #501011) * Converted file encoding of debian/copyright from ISO-8859 to UTF-8. -- Kevin Coyner Sat, 04 Oct 2008 12:38:41 -0400 tnef (1.4.3-2) unstable; urgency=low * debian/control: + Small grammatical change to description + Bumped debhelper version to 5 + Changed to new e-mail address for maintainer + Changed homepage (Closes: #413097) * debian/compat - bumped to 5 * debian/copyright: + Changed to new e-mail address for maintainer + Changed source download address -- Kevin Coyner Sun, 05 Aug 2007 11:10:03 -0400 tnef (1.4.3-1) unstable; urgency=low * New upstream release -- Fix 'unicode string filename' bug -- better handling of files with garbage at the end -- Fix a build error on Solaris 10 -- Kevin Coyner Sun, 17 Sep 2006 21:34:25 -0400 tnef (1.4.1-1) unstable; urgency=low * New upstream release (adds new switch --list-with-mime-types) * Updated Standards-Version to 3.7.2 -- Kevin Coyner Sun, 23 Jul 2006 16:01:29 -0400 tnef (1.4-1) unstable; urgency=low * New upstream release * New maintainer (Closes: #360948) * debian/rules: + small change to ./configure + added rm -rf config.cache + specifically remove config.{sub,guess} after build * debian/copyright: updated copyright info * debian/watch: update to version 3 -- Kevin Coyner Thu, 6 Apr 2006 11:25:16 -0400 tnef (1.3.4-1) unstable; urgency=low * New upstream release -- Florian Ernst Mon, 24 Oct 2005 17:38:12 +0200 tnef (1.3.3-1) unstable; urgency=low * New upstream release, taking over with previous maintainer's consent (Closes: #199800) + includes --maxsize option, thus dropping debian/sizelimit.diff * debian/control: + upgrade debhelper B-D to >=4, adding B-D on autotools-dev + extend long description, adding upstream Homepage * debian/copright: + update upstream homepage + update copyright info * debian/rules: + general cleanup, stripping out all unneeded parts + use HOST and BUILD, auto-update config.{sub,guess} + export compat (now 4) and docs into corresponding files + use DESTDIR for installing + switch to dh_installman * debian/watch: added * Removed various old and empty templates * Standards-Version: 3.6.2 -- Florian Ernst Thu, 22 Sep 2005 14:21:19 +0200 tnef (1.2.3-0.1) unstable; urgency=low * NMU. * New upstream version (closes: #199800). -- Matthias Klose Mon, 29 Dec 2003 09:54:21 +0100 tnef (1.1.4-1) unstable; urgency=low * New upstream version should allegedly fix segfault; changes are fairly minor (with the usual massive amount of changes in auto-*-generated files). It has fixed the segfault in the example file I have, so... closes: #176046 * Remembered to change Maintainer: field in control file this time :-/ -- Nick Phillips Sat, 22 Feb 2003 16:41:28 +1300 tnef (1.1.3-1) unstable; urgency=low * New upstream version, 1.1.2 not packaged for Debian. * Should now handle a greater proportion of TNEF input files. * libgen.h appears no longer to be needed for a clean build, so removed. * Still a segfault bug outstanding upstream. * Not an NMU. -- Nick Phillips Mon, 25 Nov 2002 22:02:34 +1300 tnef (1.1.1-0.1) unstable; urgency=low * NMU. * New upstream version. * Include the `sizelimit' patch found on http://www.mailscanner.info/. Adds options -x --maxsize=. * Remove man page included upstream. * src/tnef.c: #include (closes: #115981). * The attachment, which couldn't be decoded by tnef-0.15, can be decoded with this version (closes: #84348). -- Matthias Klose Thu, 10 Jan 2002 22:31:47 +0100 tnef (1.0.1-1) unstable; urgency=low * Updated upstream release (Closes: #93632) -- Javier Fernandez-Sanguino Pen~a Tue, 8 May 2001 18:08:16 +0200 tnef (0.15-2) unstable; urgency=low * Spelling fixes (Closes: #84347) -- Javier Fernandez-Sanguino Pen~a Sun, 4 Feb 2001 11:32:59 +0100 tnef (0.15-1) unstable; urgency=low * Initial release. -- Javier Fernandez-Sanguino Pen~a Wed, 13 Dec 2000 13:17:53 +0100 debian/source/0000775000000000000000000000000011746573454010510 5ustar debian/source/format0000664000000000000000000000001411746573454011716 0ustar 3.0 (quilt) debian/compat0000664000000000000000000000000211746573454010406 0ustar 8 debian/patches/0000775000000000000000000000000013113016006010606 5ustar debian/patches/manpage_fix0000664000000000000000000000065311746574166013045 0ustar --- a/doc/tnef.1.in +++ b/doc/tnef.1.in @@ -17,8 +17,9 @@ Encapsulation Format (hereafter, TNEF), which "wraps" Microsoft e-mail attachments. .PP -.IR Unfortunately "," these "wrapped" attachments are inaccessible to -any e-mail client that does not understand TNEF. +.IR Unfortunately "," +these "wrapped" attachments are inaccessible to any e-mail client that does not +understand TNEF. .IR Fortunately "," the .B tnef debian/patches/CVE-2017-6309-6310.patch0000664000000000000000000000523113055064726013643 0ustar Index: tnef-1.4.9/src/file.c =================================================================== --- tnef-1.4.9.orig/src/file.c 2017-02-27 14:02:32.774925935 +0100 +++ tnef-1.4.9/src/file.c 2017-02-27 14:02:32.770925724 +0100 @@ -173,11 +173,13 @@ switch (a->name) { case MAPI_ATTACH_LONG_FILENAME: + assert(a->type == szMAPI_STRING); if (file->name) XFREE(file->name); file->name = strdup( (char*)a->values[0].data.buf ); break; case MAPI_ATTACH_DATA_OBJ: + assert((a->type == szMAPI_BINARY) || (a->type == szMAPI_OBJECT)); file->len = a->values[0].len; if (file->data) XFREE (file->data); file->data = CHECKED_XMALLOC (unsigned char, file->len); @@ -185,12 +187,14 @@ break; case MAPI_ATTACH_MIME_TAG: + assert(a->type == szMAPI_STRING); if (file->mime_type) XFREE (file->mime_type); file->mime_type = CHECKED_XMALLOC (char, a->values[0].len); memmove (file->mime_type, a->values[0].data.buf, a->values[0].len); break; case MAPI_ATTACH_CONTENT_ID: + assert(a->type == szMAPI_STRING); if (file->content_id) XFREE(file->content_id); file->content_id = CHECKED_XMALLOC (char, a->values[0].len); memmove (file->content_id, a->values[0].data.buf, a->values[0].len); Index: tnef-1.4.9/src/tnef.c =================================================================== --- tnef-1.4.9.orig/src/tnef.c 2017-02-27 14:02:32.774925935 +0100 +++ tnef-1.4.9/src/tnef.c 2017-02-27 14:02:32.770925724 +0100 @@ -157,10 +157,12 @@ int j; for (j = 0; j < a->num_values; j++) { - body[j] = XMALLOC(VarLenData, 1); - body[j]->len = a->values[j].len; - body[j]->data = CHECKED_XCALLOC(unsigned char, a->values[j].len); - memmove (body[j]->data, a->values[j].data.buf, body[j]->len); + if (a->type == szMAPI_BINARY) { + body[j] = XMALLOC(VarLenData, 1); + body[j]->len = a->values[j].len; + body[j]->data = CHECKED_XCALLOC(unsigned char, a->values[j].len); + memmove (body[j]->data, a->values[j].data.buf, body[j]->len); + } } return body; } @@ -298,13 +300,13 @@ for (i = 0; mapi_attrs[i]; i++) { MAPI_Attr *a = mapi_attrs[i]; - - if (a->name == MAPI_BODY_HTML) + + if (a->type == szMAPI_BINARY && a->name == MAPI_BODY_HTML) { body.html_bodies = get_html_data (a); html_size = a->num_values; } - else if (a->name == MAPI_RTF_COMPRESSED) + else if (a->type == szMAPI_BINARY && a->name == MAPI_RTF_COMPRESSED) { body.rtf_bodies = get_rtf_data (a); rtf_size = a->num_values; debian/patches/series0000664000000000000000000000021713113016006012023 0ustar manpage_fix CVE-2017-6307.patch CVE-2017-6308.patch CVE-2017-6309-6310.patch fix-regression-1.patch fix-regression-2.patch CVE-2017-8911.patch debian/patches/CVE-2017-8911.patch0000664000000000000000000000404613113016006013237 0ustar Index: tnef-1.4.9/src/mapi_attr.c =================================================================== --- tnef-1.4.9.orig/src/mapi_attr.c 2017-05-29 15:43:00.251082145 +0200 +++ tnef-1.4.9/src/mapi_attr.c 2017-05-29 15:43:00.247081906 +0200 @@ -227,6 +227,8 @@ a->names[i].len = GETINT32(buf+idx); idx += 4; /* read the data into a buffer */ + /* read the data into a buffer */ + assert(a->names[i].len != 0); assert(idx+a->names[i].len <= len); a->names[i].data = unicode_to_utf8(a->names[i].len, buf+idx); Index: tnef-1.4.9/src/util.c =================================================================== --- tnef-1.4.9.orig/src/util.c 2017-05-29 15:43:00.251082145 +0200 +++ tnef-1.4.9/src/util.c 2017-05-29 15:43:00.247081906 +0200 @@ -85,28 +85,29 @@ int j = 0; unsigned char *utf8 = malloc (3 * len/2 + 1); /* won't get any longer than this */ - for (i = 0; i < len - 1; i += 2) - { - uint32 c = GETINT16(buf + i); - if (c <= 0x007f) - { - utf8[j++] = 0x00 | ((c & 0x007f) >> 0); - } - else if (c < 0x07ff) - { - utf8[j++] = 0xc0 | ((c & 0x07c0) >> 6); - utf8[j++] = 0x80 | ((c & 0x003f) >> 0); - } - else - { - utf8[j++] = 0xe0 | ((c & 0xf000) >> 12); - utf8[j++] = 0x80 | ((c & 0x0fc0) >> 6); - utf8[j++] = 0x80 | ((c & 0x003f) >> 0); - } + if (len > 0) { + for (i = 0; i < len - 1; i += 2) + { + uint32 c = GETINT16(buf + i); + if (c <= 0x007f) + { + utf8[j++] = 0x00 | ((c & 0x007f) >> 0); + } + else if (c < 0x07ff) + { + utf8[j++] = 0xc0 | ((c & 0x07c0) >> 6); + utf8[j++] = 0x80 | ((c & 0x003f) >> 0); + } + else + { + utf8[j++] = 0xe0 | ((c & 0xf000) >> 12); + utf8[j++] = 0x80 | ((c & 0x0fc0) >> 6); + utf8[j++] = 0x80 | ((c & 0x003f) >> 0); + } + } } - + utf8[j] = '\0'; - + return utf8; } - debian/patches/CVE-2017-6307.patch0000664000000000000000000000201113055064726013243 0ustar Index: tnef-1.4.9/src/mapi_attr.c =================================================================== --- tnef-1.4.9.orig/src/mapi_attr.c 2017-02-27 14:01:53.916881615 +0100 +++ tnef-1.4.9/src/mapi_attr.c 2017-02-27 14:01:53.908881194 +0100 @@ -173,6 +173,7 @@ size_t idx = 0; uint32 i,j,mvf; uint32 num_properties = GETINT32(buf+idx); + assert((num_properties+1) != 0); MAPI_Attr** attrs = CHECKED_XMALLOC (MAPI_Attr*, (num_properties + 1)); idx += 4; @@ -229,6 +230,7 @@ /* read the data into a buffer */ a->names[i].data = CHECKED_XMALLOC(unsigned char, a->names[i].len); + assert((idx+(a->names[i].len*2)) <= len); for (j = 0; j < (a->names[i].len >> 1); j++) a->names[i].data[j] = (buf+idx)[j*2]; @@ -338,8 +340,11 @@ { v->len = GETINT32(buf+idx); idx += 4; + assert(v->len + idx <= len); + if (a->type == szMAPI_UNICODE_STRING) { + assert(v->len != 0); v->data.buf = (unsigned char*)unicode_to_utf8(v->len, buf+idx); } else debian/patches/fix-regression-1.patch0000664000000000000000000000322613064252561014751 0ustar Index: tnef-1.4.9/src/file.c =================================================================== --- tnef-1.4.9.orig/src/file.c 2017-03-21 01:26:23.730272408 +0100 +++ tnef-1.4.9/src/file.c 2017-03-21 01:26:23.726272196 +0100 @@ -173,7 +173,7 @@ switch (a->name) { case MAPI_ATTACH_LONG_FILENAME: - assert(a->type == szMAPI_STRING); + assert(a->type == szMAPI_STRING || a->type == szMAPI_UNICODE_STRING); if (file->name) XFREE(file->name); file->name = strdup( (char*)a->values[0].data.buf ); break; @@ -187,18 +187,18 @@ break; case MAPI_ATTACH_MIME_TAG: - assert(a->type == szMAPI_STRING); + assert(a->type == szMAPI_STRING || a->type == szMAPI_UNICODE_STRING); if (file->mime_type) XFREE (file->mime_type); file->mime_type = CHECKED_XMALLOC (char, a->values[0].len); memmove (file->mime_type, a->values[0].data.buf, a->values[0].len); break; - case MAPI_ATTACH_CONTENT_ID: - assert(a->type == szMAPI_STRING); - if (file->content_id) XFREE(file->content_id); - file->content_id = CHECKED_XMALLOC (char, a->values[0].len); - memmove (file->content_id, a->values[0].data.buf, a->values[0].len); - break; + case MAPI_ATTACH_CONTENT_ID: + assert(a->type == szMAPI_STRING || a->type == szMAPI_UNICODE_STRING); + if (file->content_id) XFREE(file->content_id); + file->content_id = CHECKED_XMALLOC (char, a->values[0].len); + memmove (file->content_id, a->values[0].data.buf, a->values[0].len); + break; default: break; debian/patches/CVE-2017-6308.patch0000664000000000000000000000751113055064726013256 0ustar Index: tnef-1.4.9/src/alloc.c =================================================================== --- tnef-1.4.9.orig/src/alloc.c 2017-02-27 14:02:15.077994899 +0100 +++ tnef-1.4.9/src/alloc.c 2017-02-27 14:02:15.069994478 +0100 @@ -40,14 +40,23 @@ return alloc_limit; } +size_t +check_mul_overflow(size_t a, size_t b, size_t* res) +{ + size_t tmp = a * b; + if (a != 0 && tmp / a != b) return 1; + *res = tmp; + return 0; +} + static void alloc_limit_failure (char *fn_name, size_t size) { - fprintf (stderr, + fprintf (stderr, "%s: Maximum allocation size exceeded " "(maxsize = %lu; size = %lu).\n", fn_name, - (unsigned long)alloc_limit, + (unsigned long)alloc_limit, (unsigned long)size); } @@ -56,17 +65,21 @@ { if (alloc_limit && size > alloc_limit) { - alloc_limit_failure (fn_name, size); - exit (-1); + alloc_limit_failure (fn_name, size); + exit (-1); } } /* attempts to malloc memory, if fails print error and call abort */ void* -xmalloc (size_t size) +xmalloc (size_t num, size_t size) { - void *ptr = malloc (size); - if (!ptr + size_t res; + if (check_mul_overflow(num, size, &res)) + abort(); + + void *ptr = malloc (res); + if (!ptr && (size != 0)) /* some libc don't like size == 0 */ { perror ("xmalloc: Memory allocation failure"); @@ -77,20 +90,29 @@ /* Allocates memory but only up to a limit */ void* -checked_xmalloc (size_t size) +checked_xmalloc (size_t num, size_t size) { - alloc_limit_assert ("checked_xmalloc", size); - return xmalloc (size); + size_t res; + if (check_mul_overflow(num, size, &res)) + abort(); + + alloc_limit_assert ("checked_xmalloc", res); + return xmalloc (num, size); } /* xmallocs memory and clears it out */ void* xcalloc (size_t num, size_t size) { - void *ptr = malloc(num * size); + size_t res; + if (check_mul_overflow(num, size, &res)) + abort(); + + void *ptr; + ptr = malloc(res); if (ptr) { - memset (ptr, '\0', (num * size)); + memset (ptr, '\0', (res)); } return ptr; } @@ -99,9 +121,10 @@ void* checked_xcalloc (size_t num, size_t size) { - alloc_limit_assert ("checked_xcalloc", (num *size)); + size_t res; + if (check_mul_overflow(num, size, &res)) + abort(); + + alloc_limit_assert ("checked_xcalloc", (res)); return xcalloc (num, size); } - - - Index: tnef-1.4.9/src/alloc.h =================================================================== --- tnef-1.4.9.orig/src/alloc.h 2017-02-27 14:02:15.077994899 +0100 +++ tnef-1.4.9/src/alloc.h 2017-02-27 14:02:15.069994478 +0100 @@ -35,20 +35,20 @@ extern void set_alloc_limit (size_t size); extern size_t get_alloc_limit(); extern void alloc_limit_assert (char *fn_name, size_t size); -extern void* checked_xmalloc (size_t size); -extern void* xmalloc (size_t size); +extern void* checked_xmalloc (size_t num, size_t size); +extern void* xmalloc (size_t num, size_t size); extern void* checked_xcalloc (size_t num, size_t size); extern void* xcalloc (size_t num, size_t size); #define XMALLOC(_type,_num) \ - ((_type*)xmalloc((_num)*sizeof(_type))) + ((_type*)xmalloc((_num), sizeof(_type))) #define XCALLOC(_type,_num) \ ((_type*)xcalloc((_num), sizeof (_type))) #define CHECKED_XMALLOC(_type,_num) \ - ((_type*)checked_xmalloc((_num)*sizeof(_type))) + ((_type*)checked_xmalloc((_num),sizeof(_type))) #define CHECKED_XCALLOC(_type,_num) \ ((_type*)checked_xcalloc((_num),sizeof(_type))) #define XFREE(_ptr) \ - do { if (_ptr) { free (_ptr); _ptr = 0; } } while (0) + do { if (_ptr) { free (_ptr); _ptr = 0; } } while (0) #endif /* ALLOC_H */ debian/patches/fix-regression-2.patch0000664000000000000000000000201613064252561014746 0ustar Index: tnef-1.4.9/src/mapi_attr.c =================================================================== --- tnef-1.4.9.orig/src/mapi_attr.c 2017-03-21 01:26:32.134717092 +0100 +++ tnef-1.4.9/src/mapi_attr.c 2017-03-21 01:26:32.130716881 +0100 @@ -216,7 +216,6 @@ a->num_names = GETINT32(buf+idx); idx += 4; if (a->num_names > 0) { - /* FIXME: do something useful here! */ size_t i; a->names = CHECKED_XCALLOC(VarLenData, a->num_names); @@ -228,13 +227,8 @@ a->names[i].len = GETINT32(buf+idx); idx += 4; /* read the data into a buffer */ - a->names[i].data - = CHECKED_XMALLOC(unsigned char, a->names[i].len); - assert((idx+(a->names[i].len*2)) <= len); - for (j = 0; j < (a->names[i].len >> 1); j++) - a->names[i].data[j] = (buf+idx)[j*2]; - - /* But what are we going to do with it? */ + assert(idx+a->names[i].len <= len); + a->names[i].data = unicode_to_utf8(a->names[i].len, buf+idx); idx += pad_to_4byte(a->names[i].len); } debian/copyright0000664000000000000000000000363111746574426011146 0ustar Format: http://dep.debian.net/deps/dep5 Upstream-Name: tnef Source: Files: * Copyright: (c) 1999-2010 Mark Simpson (c) 1997,1998 Thomas Boll (original code) License: GPL-2+ This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this package; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA . On Debian systems, the full text of the GNU General Public License version 2 can be found in the file "/usr/share/common-licenses/GPL-2". Files: debian/* Copyright: 2006-2012 Kevin Coyner License: GPL-2+ This package is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. . This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see . On Debian systems, the complete text of the GNU General Public License version 2 can be found in "/usr/share/common-licenses/GPL-2". debian/watch0000664000000000000000000000006011746574207010232 0ustar version=3 http://sf.net/tnef/tnef-(.*)\.tar\.gz debian/mime0000664000000000000000000000021611746574152010055 0ustar application/ms-tnef; /usr/bin/tnef -w -f %s; needsterminal; description=Microsoft's Exchange Encapsulation; nametemplate=%s.data; priority=2 debian/rules0000775000000000000000000000071711746573454010275 0ustar #!/usr/bin/make -f # -*- makefile -*- # Sample debian/rules that uses debhelper. # This file was originally written by Joey Hess and Craig Small. # As a special exception, when this file is copied by dh-make into a # dh-make output file, you may use that output file without restriction. # This special exception was added by Craig Small in version 0.37 of dh-make. # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 %: dh $@ --with autotools-dev