annotate mcabber/contrib/conv_log_dates.pl @ 403:17aa60c6dc63

Allow a different server name than the jid domain name Sync libjabber with upstream (centericq). The libjabber patch is from Ian Johannesen. This allows connecting to Google Talk, for example.
author Mikael Berthe <mikael@lilotux.net>
date Sat, 27 Aug 2005 11:21:27 +0200
parents c07fa9baca3f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
243
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
1 #!/usr/bin/perl -w
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
2 #
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
3 # usage: conv_log_dates.pl historyfile.old > historyfile.new
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
4 # Convert the dates to the new logfile format (mcabber v. >= 0.6.1)
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
5 #
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
6 # See histolog.c for the mcabber format.
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
7 #
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
8 # MiKael, 2005/06/14
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
9
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
10 use strict;
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
11
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
12 my $line;
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
13 my $linesleft = 0;
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
14
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
15 while ($line = <>) {
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
16 if ($linesleft) {
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
17 print $line;
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
18 $linesleft--;
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
19 next;
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
20 }
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
21 my $type = substr($line, 0, 2);
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
22 my $off_format = 0;
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
23 my $date;
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
24
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
25 if (substr($line, 11, 1) eq "T") {
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
26 $off_format = 8; # Offset
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
27 }
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
28
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
29 if ($off_format) {
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
30 # Already using the new format, nothing to do
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
31 $date = substr($line, 3, 18);
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
32 } else {
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
33 # Date conversion to iso8601
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
34 my ($ss,$mm,$hh,$DD,$MM,$YYYY) = gmtime(substr($line, 3, 10));
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
35 $date = sprintf "%04d%02d%02dT%02d:%02d:%02dZ",
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
36 $YYYY+1900, $MM+1,$DD,$hh,$mm,$ss;
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
37 }
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
38 $linesleft = substr($line, 14 + $off_format, 3);
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
39 $line = substr($line, 14 + $off_format);
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
40
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
41 print $type." ".$date." ".$line;
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
42
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
43 # Is there something better to cast to integer?
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
44 $linesleft = 0 + $linesleft;
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
45 }
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
46
c07fa9baca3f [/trunk] Changeset 256 by mikael
mikael
parents:
diff changeset
47 # vim:set sw=2 sts=2 et si cinoptions="":