author | Michael Krelin <hacker@klever.net> | 2011-03-18 17:20:34 (UTC) |
---|---|---|
committer | Michael Krelin <hacker@klever.net> | 2011-03-19 16:26:43 (UTC) |
commit | fad7fcef73610a25bd4aef2d0da9983e8d985635 (patch) (unidiff) | |
tree | f1a0e2eac8db0c29f4c2e3fa6b6bbfc98b4b5a11 | |
parent | 0573764b7e7bdff6e5fbbb558d4d647c34f07271 (diff) | |
download | iii-fad7fcef73610a25bd4aef2d0da9983e8d985635.zip iii-fad7fcef73610a25bd4aef2d0da9983e8d985635.tar.gz iii-fad7fcef73610a25bd4aef2d0da9983e8d985635.tar.bz2 |
bumped version and dates and updated NEWS
Signed-off-by: Michael Krelin <hacker@klever.net>
-rw-r--r-- | COPYING | 2 | ||||
-rw-r--r-- | NEWS.xml | 8 | ||||
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | doc/iiid.8.in | 2 |
4 files changed, 11 insertions, 3 deletions
@@ -1,19 +1,19 @@ | |||
1 | Copyright (c) 2009-2010 Klever Group (http://www.klever.net/) | 1 | Copyright (c) 2009-2011 Klever Group (http://www.klever.net/) |
2 | 2 | ||
3 | Permission is hereby granted, free of charge, to any person obtaining a copy of | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of |
4 | this software and associated documentation files (the "Software"), to deal in | 4 | this software and associated documentation files (the "Software"), to deal in |
5 | the Software without restriction, including without limitation the rights to | 5 | the Software without restriction, including without limitation the rights to |
6 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies | 6 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies |
7 | of the Software, and to permit persons to whom the Software is furnished to do | 7 | of the Software, and to permit persons to whom the Software is furnished to do |
8 | so, subject to the following conditions: | 8 | so, subject to the following conditions: |
9 | 9 | ||
10 | The above copyright notice and this permission notice shall be included in all | 10 | The above copyright notice and this permission notice shall be included in all |
11 | copies or substantial portions of the Software. | 11 | copies or substantial portions of the Software. |
12 | 12 | ||
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
19 | SOFTWARE. | 19 | SOFTWARE. |
@@ -1,10 +1,18 @@ | |||
1 | <?xml version="1.0" encoding="us-ascii"?> | 1 | <?xml version="1.0" encoding="us-ascii"?> |
2 | <news> | 2 | <news> |
3 | <version version="0.2" date="March ??th, 2011"> | ||
4 | <ni>improved compatibility with Geo X2 card</ni> | ||
5 | <ni>extract and store .log files supplied for geotagging purpose</ni> | ||
6 | <ni>added script for post-processing uploaded photo (sort by exif | ||
7 | timestamp)</ni> | ||
8 | <ni>added utility to extract chunks from RIFF (video) files to assist in | ||
9 | automatic sorting of videos</ni> | ||
10 | </version> | ||
3 | <version version="0.1" date="April 5th, 2009"> | 11 | <version version="0.1" date="April 5th, 2009"> |
4 | <ni>integrity digest verification</ni> | 12 | <ni>integrity digest verification</ni> |
5 | <ni>try to create upload directory if it doesn't exist</ni> | 13 | <ni>try to create upload directory if it doesn't exist</ni> |
6 | </version> | 14 | </version> |
7 | <version version="0.0" date="March 8th, 2009"> | 15 | <version version="0.0" date="March 8th, 2009"> |
8 | <ni>Initial release</ni> | 16 | <ni>Initial release</ni> |
9 | </version> | 17 | </version> |
10 | </news> | 18 | </news> |
diff --git a/configure.ac b/configure.ac index a719cdd..d580f58 100644 --- a/configure.ac +++ b/configure.ac | |||
@@ -1,75 +1,75 @@ | |||
1 | AC_INIT([iii], [0.1], [iii-bugs@klever.net]) | 1 | AC_INIT([iii], [0.2], [iii-bugs@klever.net]) |
2 | AC_CONFIG_SRCDIR([src/iiid.cc]) | 2 | AC_CONFIG_SRCDIR([src/iiid.cc]) |
3 | AC_CONFIG_HEADERS([config.h]) | 3 | AC_CONFIG_HEADERS([config.h]) |
4 | AM_INIT_AUTOMAKE([dist-bzip2]) | 4 | AM_INIT_AUTOMAKE([dist-bzip2]) |
5 | 5 | ||
6 | AC_PROG_INSTALL | 6 | AC_PROG_INSTALL |
7 | AC_PROG_CXX | 7 | AC_PROG_CXX |
8 | AC_PROG_CC | 8 | AC_PROG_CC |
9 | PKG_PROG_PKG_CONFIG | 9 | PKG_PROG_PKG_CONFIG |
10 | 10 | ||
11 | AC_HEADER_STDC | 11 | AC_HEADER_STDC |
12 | 12 | ||
13 | AC_PATH_PROG([XSLTPROC],[xsltproc],[true]) | 13 | AC_PATH_PROG([XSLTPROC],[xsltproc],[true]) |
14 | 14 | ||
15 | PKG_CHECK_MODULES([MODULES],[gsoap++ openssl libconfuse]) | 15 | PKG_CHECK_MODULES([MODULES],[gsoap++ openssl libconfuse]) |
16 | PKG_CHECK_MODULES([UUID],[uuid],[have_uuid=true],[have_uuid=false]) | 16 | PKG_CHECK_MODULES([UUID],[uuid],[have_uuid=true],[have_uuid=false]) |
17 | AM_CONDITIONAL([HAVE_UUID],[$have_uuid]) | 17 | AM_CONDITIONAL([HAVE_UUID],[$have_uuid]) |
18 | if $have_uuid ; then | 18 | if $have_uuid ; then |
19 | AC_DEFINE([HAVE_LIBUUID],,[defined in presence of libuuid]) | 19 | AC_DEFINE([HAVE_LIBUUID],,[defined in presence of libuuid]) |
20 | AC_SUBST([UUID_UUID],[uuid]) | 20 | AC_SUBST([UUID_UUID],[uuid]) |
21 | fi | 21 | fi |
22 | 22 | ||
23 | AC_PATH_PROG([SOAPCPP2],[soapcpp2],[false]) | 23 | AC_PATH_PROG([SOAPCPP2],[soapcpp2],[false]) |
24 | test "$SOAPCPP2" = "false" && AC_MSG_ERROR([no soapcpp2 tool, part of gsoap package, found.]) | 24 | test "$SOAPCPP2" = "false" && AC_MSG_ERROR([no soapcpp2 tool, part of gsoap package, found.]) |
25 | 25 | ||
26 | notfound=false | 26 | notfound=false |
27 | AC_CHECK_HEADERS([archive.h],[ | 27 | AC_CHECK_HEADERS([archive.h],[ |
28 | AC_CHECK_LIB([archive],[archive_read_new],,[notfound=true]) | 28 | AC_CHECK_LIB([archive],[archive_read_new],,[notfound=true]) |
29 | ],[notfound=true]) | 29 | ],[notfound=true]) |
30 | $notfound && AC_MSG_ERROR([no required libarchive library found. get one from http://people.freebsd.org/~kientzle/libarchive/]) | 30 | $notfound && AC_MSG_ERROR([no required libarchive library found. get one from http://people.freebsd.org/~kientzle/libarchive/]) |
31 | 31 | ||
32 | notfound=false | 32 | notfound=false |
33 | AC_LANG_PUSH([C++]) | 33 | AC_LANG_PUSH([C++]) |
34 | AC_CHECK_HEADERS([autosprintf.h],[ | 34 | AC_CHECK_HEADERS([autosprintf.h],[ |
35 | AC_CHECK_LIB([asprintf],[main],,[notfound=true]) | 35 | AC_CHECK_LIB([asprintf],[main],,[notfound=true]) |
36 | ],[notfound=true]) | 36 | ],[notfound=true]) |
37 | $notfound && AC_MSG_ERROR([no autosprintf, part of gettext, found]) | 37 | $notfound && AC_MSG_ERROR([no autosprintf, part of gettext, found]) |
38 | AC_LANG_POP([C++]) | 38 | AC_LANG_POP([C++]) |
39 | 39 | ||
40 | nitpick=false | 40 | nitpick=false |
41 | AC_ARG_ENABLE([nitpicking], | 41 | AC_ARG_ENABLE([nitpicking], |
42 | AC_HELP_STRING([--enable-nitpicking],[make compiler somewhat overly fastidious about the code it deals with]), | 42 | AC_HELP_STRING([--enable-nitpicking],[make compiler somewhat overly fastidious about the code it deals with]), |
43 | [ test "$enableval" = "no" || nitpick=true ] | 43 | [ test "$enableval" = "no" || nitpick=true ] |
44 | ) | 44 | ) |
45 | if $nitpick ; then | 45 | if $nitpick ; then |
46 | CPP_NITPICK="-pedantic -Wall -Wextra -Wundef -Wshadow \ | 46 | CPP_NITPICK="-pedantic -Wall -Wextra -Wundef -Wshadow \ |
47 | -Wunsafe-loop-optimizations -Wconversion -Wmissing-format-attribute \ | 47 | -Wunsafe-loop-optimizations -Wconversion -Wmissing-format-attribute \ |
48 | -Wredundant-decls -ansi -Wlogical-op -Wmissing-noreturn" | 48 | -Wredundant-decls -ansi -Wlogical-op -Wmissing-noreturn" |
49 | C_NITPICK="$CPP_NITPICK" | 49 | C_NITPICK="$CPP_NITPICK" |
50 | CXX_NITPICK="$C_NITPICK" | 50 | CXX_NITPICK="$C_NITPICK" |
51 | 51 | ||
52 | CPPFLAGS="$CPPFLAGS $CPP_NITPICK" | 52 | CPPFLAGS="$CPPFLAGS $CPP_NITPICK" |
53 | CFLAGS="$CFLAGS $C_NITPICK" | 53 | CFLAGS="$CFLAGS $C_NITPICK" |
54 | CXXFLAGS="$CXXFLAGS $CXX_NITPICK" | 54 | CXXFLAGS="$CXXFLAGS $CXX_NITPICK" |
55 | fi | 55 | fi |
56 | 56 | ||
57 | ndebug=true | 57 | ndebug=true |
58 | AC_ARG_ENABLE([debug], | 58 | AC_ARG_ENABLE([debug], |
59 | AC_HELP_STRING([--enable-debug],[enable debugging code]), | 59 | AC_HELP_STRING([--enable-debug],[enable debugging code]), |
60 | [ test "$enableval" = "no" || ndebug=false ] | 60 | [ test "$enableval" = "no" || ndebug=false ] |
61 | ) | 61 | ) |
62 | if $ndebug ; then | 62 | if $ndebug ; then |
63 | CPPFLAGS_DEBUG="-DNDEBUG" | 63 | CPPFLAGS_DEBUG="-DNDEBUG" |
64 | else | 64 | else |
65 | CPPFLAGS_DEBUG="-DDEBUG" | 65 | CPPFLAGS_DEBUG="-DDEBUG" |
66 | fi | 66 | fi |
67 | AC_SUBST([CPPFLAGS_DEBUG]) | 67 | AC_SUBST([CPPFLAGS_DEBUG]) |
68 | 68 | ||
69 | AC_CONFIG_FILES([ | 69 | AC_CONFIG_FILES([ |
70 | Makefile | 70 | Makefile |
71 | src/Makefile | 71 | src/Makefile |
72 | doc/Makefile | 72 | doc/Makefile |
73 | doc/iiid.8 | 73 | doc/iiid.8 |
74 | ]) | 74 | ]) |
75 | AC_OUTPUT | 75 | AC_OUTPUT |
diff --git a/doc/iiid.8.in b/doc/iiid.8.in index 63a941e..533ed18 100644 --- a/doc/iiid.8.in +++ b/doc/iiid.8.in | |||
@@ -1,106 +1,106 @@ | |||
1 | .TH iiid 8 "March 8th, 2009" "iiid(8)" "Klever Group (http://www.klever.net/)" | 1 | .TH iiid 8 "March 8th, 2009" "iiid(8)" "Klever Group (http://www.klever.net/)" |
2 | .hla en | 2 | .hla en |
3 | 3 | ||
4 | .SH NAME | 4 | .SH NAME |
5 | 5 | ||
6 | iiid \- An eye-fi card management daemon | 6 | iiid \- An eye-fi card management daemon |
7 | 7 | ||
8 | .SH SYNOPSYS | 8 | .SH SYNOPSYS |
9 | 9 | ||
10 | \fBiiid\fR | 10 | \fBiiid\fR |
11 | [\fB-h\fR] [\fB--help\fR] [\fB--usage\fR] | 11 | [\fB-h\fR] [\fB--help\fR] [\fB--usage\fR] |
12 | [\fB-V\fR] [\fB--version\fR] | 12 | [\fB-V\fR] [\fB--version\fR] |
13 | [\fB-L\fR] [\fB--license\fR] | 13 | [\fB-L\fR] [\fB--license\fR] |
14 | [\fB-p\fR \fIport\fR] [\fB--port=\fR\fIport\fR] | 14 | [\fB-p\fR \fIport\fR] [\fB--port=\fR\fIport\fR] |
15 | 15 | ||
16 | .SH DESCRIPTION | 16 | .SH DESCRIPTION |
17 | 17 | ||
18 | iiid daemon is a minimalistic open source eye-fi management daemon | 18 | iiid daemon is a minimalistic open source eye-fi management daemon |
19 | implementation. It is listening for incoming connections and accepts files from | 19 | implementation. It is listening for incoming connections and accepts files from |
20 | eye-fi card, optionally invoking scripts to sort out files or send out | 20 | eye-fi card, optionally invoking scripts to sort out files or send out |
21 | notifications. | 21 | notifications. |
22 | 22 | ||
23 | .SH OPTIONS | 23 | .SH OPTIONS |
24 | 24 | ||
25 | .TP | 25 | .TP |
26 | \fB-p\fR \fIport\fR, \fB--port=\fR\fIport\fR | 26 | \fB-p\fR \fIport\fR, \fB--port=\fR\fIport\fR |
27 | Set the port to listen to. You're not likely to ever need to change this, | 27 | Set the port to listen to. You're not likely to ever need to change this, |
28 | perhaps for debugging purpose or if you want to proxy connections. | 28 | perhaps for debugging purpose or if you want to proxy connections. |
29 | .TP | 29 | .TP |
30 | \fB-h\fR, \fB--help\fR, \fB--usage\fR | 30 | \fB-h\fR, \fB--help\fR, \fB--usage\fR |
31 | Display short usage instructions and exit. | 31 | Display short usage instructions and exit. |
32 | .TP | 32 | .TP |
33 | \fB-V\fR, \fB--version\fR | 33 | \fB-V\fR, \fB--version\fR |
34 | Report version and exit. | 34 | Report version and exit. |
35 | .TP | 35 | .TP |
36 | \fB-L\fR, \fB--license\fR | 36 | \fB-L\fR, \fB--license\fR |
37 | Show licensing terms. | 37 | Show licensing terms. |
38 | 38 | ||
39 | .SH EXIT STATUS | 39 | .SH EXIT STATUS |
40 | 40 | ||
41 | The daemon isn't supposed to exit at this point, but, like most executables, it returns zero in case of success, non-zero otherwise. | 41 | The daemon isn't supposed to exit at this point, but, like most executables, it returns zero in case of success, non-zero otherwise. |
42 | 42 | ||
43 | .SH FILES | 43 | .SH FILES |
44 | 44 | ||
45 | .TP | 45 | .TP |
46 | @sysconfdir@/iii/\fBXXXXXXXXXXXX.conf/fR | 46 | @sysconfdir@/iii/\fBXXXXXXXXXXXX.conf/fR |
47 | Upon successfull connection, the daemon reads the configuration from this file, | 47 | Upon successfull connection, the daemon reads the configuration from this file, |
48 | where XXXXXXXXXXXX is the macaddress of your eyefi card. You can lookup the mac | 48 | where XXXXXXXXXXXX is the macaddress of your eyefi card. You can lookup the mac |
49 | address of your card in your Mac/Windows Settings.xml file. Be sure to remove | 49 | address of your card in your Mac/Windows Settings.xml file. Be sure to remove |
50 | dashes from it. | 50 | dashes from it. |
51 | 51 | ||
52 | .SH CONFIGURATION OPTIONS | 52 | .SH CONFIGURATION OPTIONS |
53 | 53 | ||
54 | .TP | 54 | .TP |
55 | \fBtargetdir\fR = "\fI/var/lib/iii/%s/\fR" | 55 | \fBtargetdir\fR = "\fI/var/lib/iii/%s/\fR" |
56 | Sets the target directory for uploaded files. If the \fI%s\fR placeholder is | 56 | Sets the target directory for uploaded files. If the \fI%s\fR placeholder is |
57 | present in the string, it is replaced with card mac address. | 57 | present in the string, it is replaced with card mac address. |
58 | .TP | 58 | .TP |
59 | \fBuploadkey\fR = "\fIxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\fR" | 59 | \fBuploadkey\fR = "\fIxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\fR" |
60 | The upload key as seen in Mac/Windows Settings.xml file. | 60 | The upload key as seen in Mac/Windows Settings.xml file. |
61 | .TP | 61 | .TP |
62 | \fBon-start-session\fR = "\fIlogger iii-StartSession ${EYEFI_MACADDRESS} ${EYEFI_TRANSFER_MODE} ${EYEFI_TRANSFERMODETIMESTAMP}\fR" | 62 | \fBon-start-session\fR = "\fIlogger iii-StartSession ${EYEFI_MACADDRESS} ${EYEFI_TRANSFER_MODE} ${EYEFI_TRANSFERMODETIMESTAMP}\fR" |
63 | The command to execute on \fBStartSession\fR request. The command receives some | 63 | The command to execute on \fBStartSession\fR request. The command receives some |
64 | information via environment variables. | 64 | information via environment variables. |
65 | .TP | 65 | .TP |
66 | \fBon-upload-photo\fR = "\fIlogger iii-UploadPhoto ${EYEFI_MACADDRESS} ${EYEFI_UPLOADED}\fR" | 66 | \fBon-upload-photo\fR = "\fIlogger iii-UploadPhoto ${EYEFI_MACADDRESS} ${EYEFI_UPLOADED}\fR" |
67 | The command to execute after successfull photo upload. The information about | 67 | The command to execute after successfull photo upload. The information about |
68 | the card mac address and uploaded file name is passed via environment | 68 | the card mac address and uploaded file name is passed via environment |
69 | variables. | 69 | variables. |
70 | .TP | 70 | .TP |
71 | \fBon-mark-last-photo-in-roll\fR = "\fIlogger iii-MarkLastPhotoInRoll ${EYEFI_MACADDRESS} ${EYEFI_MERGEDELTA}\fR" | 71 | \fBon-mark-last-photo-in-roll\fR = "\fIlogger iii-MarkLastPhotoInRoll ${EYEFI_MACADDRESS} ${EYEFI_MERGEDELTA}\fR" |
72 | The command to execute on \fBMarkLastPhotoInRoll\fR request. The information | 72 | The command to execute on \fBMarkLastPhotoInRoll\fR request. The information |
73 | about request is passed via environment variables. | 73 | about request is passed via environment variables. |
74 | .TP | 74 | .TP |
75 | \fBumask\fR = \fI002\fR | 75 | \fBumask\fR = \fI002\fR |
76 | The file mode creation mask. | 76 | The file mode creation mask. |
77 | 77 | ||
78 | .SH AUTHOR | 78 | .SH AUTHOR |
79 | 79 | ||
80 | Written by Michael Krelin <hacker@klever.net> | 80 | Written by Michael Krelin <hacker@klever.net> |
81 | 81 | ||
82 | .SH COPYRIGHT | 82 | .SH COPYRIGHT |
83 | 83 | ||
84 | Copyright (c) 2009 Klever Group (http://www.klever.net/) | 84 | Copyright (c) 2009-2011 Klever Group (http://www.klever.net/) |
85 | 85 | ||
86 | Permission is hereby granted, free of charge, to any person obtaining a copy of | 86 | Permission is hereby granted, free of charge, to any person obtaining a copy of |
87 | this software and associated documentation files (the "Software"), to deal in | 87 | this software and associated documentation files (the "Software"), to deal in |
88 | the Software without restriction, including without limitation the rights to | 88 | the Software without restriction, including without limitation the rights to |
89 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies | 89 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies |
90 | of the Software, and to permit persons to whom the Software is furnished to do | 90 | of the Software, and to permit persons to whom the Software is furnished to do |
91 | so, subject to the following conditions: | 91 | so, subject to the following conditions: |
92 | 92 | ||
93 | The above copyright notice and this permission notice shall be included in all | 93 | The above copyright notice and this permission notice shall be included in all |
94 | copies or substantial portions of the Software. | 94 | copies or substantial portions of the Software. |
95 | 95 | ||
96 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | 96 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
97 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | 97 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
98 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | 98 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
99 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | 99 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
100 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | 100 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
101 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | 101 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
102 | SOFTWARE. | 102 | SOFTWARE. |
103 | 103 | ||
104 | .SH BUGS | 104 | .SH BUGS |
105 | 105 | ||
106 | You tell me. Send reports to <iii-bugs@klever.net> | 106 | You tell me. Send reports to <iii-bugs@klever.net> |