Demo Discussion
Forum Config Examples Contributions Vulnerabilities
  Discussion forum about ELOG  Not logged in ELOG logo
icon1.gif   Special characters in attribute names, posted by Steve Williamson on Thu Nov 13 13:23:32 2008 
    icon2.gif   Re: Special characters in attribute names, posted by Stefan Ritt on Mon Nov 17 10:18:52 2008 
       icon2.gif   Re: Special characters in attribute names, posted by Steve Williamson on Mon Nov 24 13:49:56 2008 elogd.cfg.txttrace.txt
          icon2.gif   Re: Special characters in attribute names, posted by Stefan Ritt on Mon Nov 24 17:53:23 2008 
             icon2.gif   Re: Special characters in attribute names, posted by Steve Williamson on Wed Nov 26 12:49:08 2008 
Message ID: 66074     Entry time: Mon Nov 24 13:49:56 2008     In reply to: 66048     Reply to this: 66075
Icon: Reply  Author: Steve Williamson  Author Email: StephenWilliamson@Barnsley.gov.uk 
Category: Bug report  OS: Linux  ELOG Version: 2.7.5 
Subject: Re: Special characters in attribute names 

Stefan Ritt wrote:

 

Steve Williamson wrote:

Hi

Thanks for elog - it's a brilliant piece of software.  I'd looked all over for open source software to log/manage change requests before discovering elog; it's so flexible that I've been able to do everything I need with it.

However, I think that I've just discovered my first undocumented 'feature'.  Attribute names containing punctuation characters (e.g. / and :) cause "Redirection limit for this URL exceeded" errors in Firefox 3.0.2 and corrupt the URL if they're used in a Quick Filter.  I often use '/' in attribute names for brevity, e.g. "Old/New Versions" but hadn't used one in a Quick Filter before.

 

Quick answer: Don't use '/' in attribute names ;-) but I guess you were kind of afraid to get this answer.

Somehow longer answer: I tried to reproduce your problem with following configuration:

[demo]
Attributes = Author, Type, Subject, Old/New
Options Old/New = Old, New
Quick filter = Type, Old/New

But I was not successful. Everything worked fine using ELOG V2.7.5-2137. Can you please check with the above configuration and tell me exactly when the redirection problem occurs? Is it during filtering on already on creating a new entry?

 

 Thanks for the advice!

I've just had time to set up a test for this using both empty and populated logbooks (which don't have Hardware/Software in every entry as the field was added recently) and newly created logbooks (which have consistent attributes) and saw the problem on . 

The control ("Hardware/Software") causing the problem has three options "Hardware Only", "Software Only" and "Both".  The problem happens every time you click on the "-- Hardware/Software --" (i.e. All) option in the Quick Filter after having previously selected one (or more) of the options as a filter.  This produces the error:

The page isn't redirecting properly
Firefox has detected that the server is redirecting the request for this address in a way that will never complete.
*   This problem can sometimes be caused by disabling or refusing to accept cookies.

I ran elog with a trace (attached) which shows lots of:

select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20

messages after selecting "-- Hardware/Software --"

The only difference between today's test and last week's is that today the browser is on the local machine.

I also attach my (anonymised) elogd.cfg

Hope this helps

regards

Steve

 

Attachment 1: elogd.cfg.txt  14 kB  | Hide | Hide all
#
# elogd.conf
#
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# This is the configuration file for eLog                                             #
# After changing this file you must re-start the elog daemon by, as root, running:    #
# /etc/rc.d/init.d/elogd restart                                                      #
# The command also recognises "start" and "stop" options                              #
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

# Standards
# ---------
# Please follow the implied standards in this configuration file
# Especially:
#   Separate logs clearly
#   Start each log with the 'global' items for the log (menu lists, security etc)
#   List all attributes before defining them
#   Define all attributes (even those with a blank definition) in the order in which they appear
#   in the main form - it makes it much easier to navigate

# -------------------------------------------------------------------------------------
# Amendment History
# -------------------------------------------------------------------------------------
# Date         Who     What
# 21/01/2008   SW      New RFC form for Change Management
# 25/01/2008   SW      New Bid Management form for MS
# 20/02/2008   SW      Amended Change Management after review
# 03/03/2008   SW      Changes SMTP relay server from x to y
# 08/04/2008   SW      Change Log - updated and simlified
# 29/04/2008   SW      Change Log - added Downtime Required and Downtime Comments fields to Section A
#                                 - added Status Comments field to Section B
# 27/06/2008   SW      Removed Standard Change from Change Log Change Type
# 13/08/2008   SW      Change Log - added Time field to Proposed Target Date
#                      Now sends email to x@y when RFC created
#                      (but not when one is edited - needed to create Change Manager 
#                      field which is displayed below contacts to implement this)
# 13/11/2008   SW      Change Log - Added Hardware/Software field for Rob Walker
#
#                        NB: Interesting bug found - attribute (field) names containing
#                        special characters (e.g. / or :) cause elog to fail to deliver and the
#                        browser gets a:
#                        "Redirection limit for this URL exceeded"
#                        message and the URL is messed up
#                        Will report this to Stefan Ritt, the developer.
# -------------------------------------------------------------------------------------

[global]
port = 8080

# Configure menus

# Menu for list of entries
List Menu Commands = List, New, Find, Select, Logout, Config, Help

# Configure fields

# Configure Email server

SMTP Host = x

# Configure standard Title Image, Time Format and text for bottom of page

Title image = <img border=0 src="b.gif" alt="b/T logo">
Bottom Text = <center><a href="/">Index page</a></center>

----------------------------------------------------------------------------------------------------------------
# Change_Log Log -----------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------

[Change_Log]

# Configure Security

Admin User = stevewi,simonf,ianp
Password File = Change_Log.pwd
#Self Register = 1

# Anyone who can log in can edit other peoples RFCs!
Restrict Edit = 0

# Menu for displayed entry
Menu Commands = List, New, Edit, Delete, Duplicate, Find, Logout, Config, Help

# Fields shown on Guest Menu
Guest Menu Commands = List, Find, Login, Help

# Fields shown on Guest List Menu (to hide Config)
Guest List Menu Commands = Find, Select, Login, Help

# Configure general appearance

Reverse sort = 1
Theme = default
Time Format = %a %e/%m/%y at %H:%M
Date Format = %a %e/%m/%y

#Last Submission =

Entries Per Page = 32

Page Title = b/t Change Log

Comment = Requests For Change

Help URL = rfchelp_english.html

# Email all changes to Administrator, user and contact list

Email All = c@y, $Contacts, "$Change Manager"

# Configure Email Identifiers

Use Email Subject = "Change Control: RFC Ref $RFC"
Use Email Heading = "Change Control: New Entry Submitted $RFC"
Use Email Heading Edit = "Change Control: Existing Entry Amended $RFC"

# Complete list of all fields

Attributes = RFC, Created, Creator Email, Last Edited, Editor Email, Section A, Requested By, Requester Email, Heat Reference, Other References, Heat Priority, Change Type, Requested Category, Item To Be Changed, Old/New Versions, Short Description, Hardware/Software, Impacts On, Impacts Details, Recovery/Back Out Plan, Proposed Target Date, Time, Downtime Required, Downtime Comments, Section B, Additional Impacts, Status, Category, Type, Status Comments, Date To Be Implemented, Section C, Updated, Implemented By, Date Implemented, PIR Result, Date PIR Complete, Signed Off By, Date Signed Off, Contacts, Change Manager

# List of fields shown on list screen

List Display = RFC, Item To Be Changed, Short Description, Hardware/Software, Heat Reference, Heat Priority, Status, Type, Proposed Target Date, Date Implemented, Date Signed Off, Edit

# Mandatory Fields

Required Attributes = Item To Be Changed, Status, Requested Category, Change Type, Short Description, Hardware/Software

# Uneditable Fields

Locked Attributes = Created, Creator Email, Last Edited, Editor Email, RFC, Section A, Section B, Section C, Change Manager

# Drop downs on list screen for speedy searches

Quick Filter = Status, Type, Hardware/Software, Heat Priority, Impacts On, Date, Subtext

# Prevent main text box appearing on list screen

Summary Lines = 0

# Configure All fields

# Section A (initial setup fields)

Comment Section A = <strong><font size=4>Initial Details<font size=3></strong>
Preset Section A = Please complete the fields in this section to describe the change
Preset On Duplicate Section A = Please complete the fields in this section to describe the change

# RFC

Format RFC = 0,narrowattribname,narrowattribvalue,60,60
Preset RFC = RFC-######
Preset On Duplicate RFC = RFC-######
Tooltip RFC = A unique reference will be generated for this Request For Change

# Created

Format Created = 0,attribname,attribvalue,70,100
Preset Created = $long_name ($short_name) on $date
Preset On Duplicate Created = $long_name ($short_name) on $date

# Creator Email

Format Creator Email = 1,attribname,attribvalue,70,100
Preset Creator Email = $user_email
Preset On Duplicate Creator Email = $user_email

# Last Edited

Format Last Edited = 0,attribname,attribvalue,70,100
Preset Last Edited = $long_name ($short_name) on $date
Preset On Duplicate Last Edited = 
Subst On Edit Last Edited = $long_name ($short_name) on $date
 
# Editor Email

Format Editor Email = 1,attribname,attribvalue,70,100
Preset Editor Email = $user_email
Subst On Edit Editor Email = $user_email

# Requested By

Format Requested By = 0,attribname,attribvalue,70,100
#Format Requested By = 0,attribname,attribvalue,40,80
Preset On Duplicate Requested By =

# Requester Email

Format Requester Email = 1,attribname,attribvalue,70,100
Preset On Duplicate Requester Email =
Tooltip Requester Email = Emails are not currently sent to requesters so this is optional

# Heat Reference

#Format Heat Reference = 0,attribname,attribvalue,40,80

Format Heat Reference = 0,attribname,attribvalue,70,100
Preset On Duplicate Heat Reference = 
Tooltip Heat Reference = Service Desk reference(s) for this change

# Other Refences

Format Other References = 1,attribname,attribvalue,70,100
Preset On Duplicate Other References = 
Tooltip Other References = Any other relevant references

# Heat Priority

Preset Heat Priority = 
Preset On Duplicate Heat Priority = 
ROptions Heat Priority = 1 (1 day), 2 (3 days), 3 (5 days), 4 (10 days), 5 (40 days), None
Tooltip Heat Priority = Service Desk priority, 1-5

# Change Type (Full or Urgent)

Format Change Type = 0
Options Change Type = Full, Urgent
Preset Change Type = Full
Tooltip Change Type = Note that Urgent CHanges require Change Manager approval

# Requested Category

Format Requested Category = 1
ROptions Requested Category = Minor, Significant, Major
Preset On Duplicate Requested Category = 
Preset Requested Category = 
Tooltip Requested Category = An indication of the resources required and impact of the change

# Item To Be Changed

Tooltip Item To Be Changed = System Name (e.g. Academy) or Hardware Device

# Old/New Versions

Tooltip Old/New Versions = Enter these if relevant

# Short Description

Tooltip Short Description = Text for the list screen - add more details in the text box or attachments

# Hardware/Software

ROptions Hardware/Software = Hardware Only, Software Only, Both
Preset On Duplicate Hardware/Software = 
Preset Hardware/Software = 
Tooltip Hardware/Software = Select the appropriate scope

# Impacts On

MOptions Impacts On = Specific Systems, Specific Users, Aix, Comms, Web, Windows, Citrix, Nagios, Capacity, Floor Space, Air Con, Power, Other
Tooltip Impacts On = Select all areas potentially impacted by this change and add comments below

# Impacts Details

Tooltip Impacts Details = Describe any specific impacts

# Recovery/Back Out Plan

Tooltip Recovery/Back Out Plan = You may also attach supporting documents

# Proposed Target Date

Preset On Duplicate Proposed Target Date = 
Tooltip Proposed Target Date = Enter date using drop-down lists or click on calendar icon
Type Proposed Target Date = Date

# Time

Format Time = 1,attribname,attribvalue
Preset On Duplicate Time = 
Tooltip Time = Optionally, enter time or other schedule information

# Downtime Required check box

MOptions Downtime Required = Yes (If checked then give details in comments)
Preset On Duplicate Downtime Required = Yes
Tooltip Downtime Required = Check this box if downtime will be required and describe it in the comments

# Downtime Comments

Format Downtime Comments = 1,attribname,attribvalue,70,100
Tooltip Downtime Comments = If downtime required then describe it here
Preset On Duplicate Downtime Comments =

# Section B

Comment Section B = <strong><font size=4>CM/CAB Actions<font size=3></strong>
Preset Section B = The CM/CAB may, optionally, appoint Investigator(s) before making a decision on whether to implement the change and if so, with what priority
Preset On Duplicate Section B = The CM/CAB may, optionally, appoint Investigator(s) before making a decision on whether to implement the change and if so, with what priority

# Additional Impacts

Tooltip Additional Impacts = Additional impacts identified during investigation

# Status

Format Status = 0
ROptions Status = New, Accepted, Rejected, Dormant, Complete
Preset On Duplicate Status = New
Preset Status = New
... 94 more lines ...
Attachment 2: trace.txt  21 kB  | Hide | Hide all
select(1024, [3], NULL, NULL, {0, 813000}) = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 1 (in [3], left {0, 313000})
accept(3, {sa_family=AF_INET, sin_port=htons(34681), sin_addr=inet_addr("127.0.0.1")}, [16]) = 5
time(NULL)                              = 1227528901
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Status=_all_&Type=_all_&Hardware%2FSoftware=%5EHardware+Only%24"..., 100000, 0) = 724
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528901
open("/usr/local/elog/logbooks/Change_Log.pwd", O_RDWR|O_CREAT|O_TRUNC, 0644) = 6
write(6, "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n", 44) = 44
time(NULL)                              = 1227528901
write(6, "<!-- created by MXML on Mon Nov 24 12:15:01 2008 -->\n", 53) = 53


<snipped user info>


close(6)                                = 0
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 293, 0) = 293
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {1, 0})
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Status=_all_&Type=_all_&Hardware%2FSoftware=%5EHardware+Only%24"..., 100000, 0) = 713
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528901
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 213, 0) = 213
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 958000})
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=%5EHardware+Only%24 HTTP/1.1\r\nHost: localho"..., 100000, 0) = 633
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528901
brk(0xa66f000)                          = 0xa66f000
brk(0xa697000)                          = 0xa697000
brk(0xa6bc000)                          = 0xa6bc000
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
brk(0xa6fc000)                          = 0xa6fc000
brk(0xa739000)                          = 0xa739000
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
open("/usr/local/elog/logbooks/<center><a href=\"/\">Index page</a></center>", O_RDONLY) = -1 ENOENT (No such file or directory)
time(NULL)                              = 1227528901
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528901
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
brk(0xa647000)                          = 0xa647000
send(5, "HTTP/1.1 200 Document follows\r\nServer: ELOG HTTP 2.7.5-2130\r\nContent-Type: text/"..., 243, 0) = 243
send(5, "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n<html><head>\n<ME"..., 7069, 0) = 7069
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 898000})
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/favicon.ico HTTP/1.1\r\nHost: localhost:8080\r\nUser-Agent: Mozilla/"..., 100000, 0) = 440
open("/usr/local/elog/scripts/Change_Log/favicon.ico", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/elog/favicon.ico", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/elog/themes/default/favicon.ico", O_RDONLY) = 6
close(6)                                = 0
open("/usr/local/elog/themes/default/favicon.ico", O_RDONLY) = 6
lseek(6, 0, SEEK_END)                   = 318
lseek(6, 0, SEEK_CUR)                   = 318
lseek(6, 0, SEEK_SET)                   = 0
time(NULL)                              = 1227528901
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
read(6, "\0\0\1\0\1\0\20\20\20\0\1\0\4\0(\1\0\0\26\0\0\0(\0\0\0\20\0\0\0 \0\0\0\1\0\4\0\0\0\0\0\300\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\204ZL\0\274\216\204\0\244vl\0\344\252\244\0\334\242"..., 318) = 318
close(6)                                = 0
send(5, "HTTP/1.1 200 Document follows\r\nServer: ELOG HTTP 2.7.5-2130\r\nAccept-Ranges: byte"..., 550, 0) = 550
select(1024, [3 5], NULL, NULL, {1, 0}) = 2 (in [3 5], left {1, 0})
time(NULL)                              = 1227528901
accept(3, {sa_family=AF_INET, sin_port=htons(34682), sin_addr=inet_addr("127.0.0.1")}, [16]) = 6
time(NULL)                              = 1227528901
select(1024, [6], NULL, NULL, {1, 0})   = 1 (in [6], left {1, 0})
recv(6, "GET /Change_Log/bbbb.gif HTTP/1.1\r\nHost: localhost:8080\r\nUser-Agent: Mozilla/5.0"..., 100000, 0) = 521
open("/usr/local/elog/scripts/Change_Log/bbbb.gif", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/elog/bbbb.gif", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/elog/themes/default/bbbb.gif", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528901
open("/usr/local/elog/themes/default/bbbb.gif", O_RDONLY) = -1 ENOENT (No such file or directory)
send(6, "HTTP/1.1 200 Document follows\r\nServer: ELOG HTTP 2.7.5-2130\r\nContent-Type: text/"..., 673, 0) = 673
close(6)                                = 0
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {1, 0})
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "", 100000, 0)                  = 0
close(5)                                = 0
select(1024, [3], NULL, NULL, {1, 0})   = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 1 (in [3], left {0, 521000})
accept(3, {sa_family=AF_INET, sin_port=htons(34683), sin_addr=inet_addr("127.0.0.1")}, [16]) = 5
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Status=_all_&Type=_all_&Hardware%2FSoftware=_all_&Heat+Priority"..., 100000, 0) = 710
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 279, 0) = 279
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 979000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Status=_all_&Type=_all_&Hardware%2FSoftware=_all_&Heat+Priority"..., 100000, 0) = 699
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 959000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 959000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 959000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 959000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 958000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 959000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 959000})
time(NULL)                              = 1227528904
time(NULL)                              = 1227528904
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 959000})
time(NULL)                              = 1227528904
time(NULL)                              = 1227528904
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528904
time(NULL)                              = 1227528904
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 961000})
time(NULL)                              = 1227528904
time(NULL)                              = 1227528904
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528904
time(NULL)                              = 1227528904
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528904
time(NULL)                              = 1227528904
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528904
time(NULL)                              = 1227528904
... 14 more lines ...
ELOG V3.1.5-fe60aaf