Issue Details (XML | Word | Printable)

Key: CORE-1470
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Claudio Valderrama C.
Reporter: Lukas Petrlik
Votes: 0
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
Firebird Core

Server crashes with secondary file name > 127 characters

Created: 19/Sep/07 10:40 AM   Updated: 26/Dec/07 10:33 AM
Component/s: Engine
Affects Version/s: 1.5.2, 1.5.3, 2.0.0, 1.5.4, 2.0.1, 2.1 Alpha 1, 2.1 Beta 1, 2.0.2
Fix Version/s: 2.1 Beta 2, 1.5.5, 2.0.4

Time Tracking:
Original Estimate: 10 minutes
Original Estimate - 10 minutes
Remaining Estimate: 10 minutes
Remaining Estimate - 10 minutes
Time Spent: Not Specified
Remaining Estimate - 10 minutes

Environment: Windows XP, MacOS X


 Description  « Hide
Server crashes when a client attempts to connect to a database whose secondary file name is longer than 127 characters.

Steps to reproduce:

- create a database
- execute 'alter database add file' with a file name > 127 characters
- close the connection and connect again; the server will crash.

Used software: Firebird-2.0.1.12855-1_embed_win32, also crashes with 2.0.0

Cause: Sign extension bug on jrd/pag.cpp:1453 which reads:

        file_length = p[1]; // SCHAR to USHORT


 All   Comments   Work Log   Change History   Version Control   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Claudio Valderrama C. added a comment - 19/Sep/07 10:40 PM
The bug was introduced in the migration of the code from C to C++.
FB1 doesn't have the bug.
Any FB1.5 and newer will typically vanish without any error message (silent crash).

Claudio Valderrama C. added a comment - 22/Sep/07 04:56 AM
Also fixed in the 1.5 branch after 1.5.4.

Pavel Cisar added a comment - 26/Oct/07 10:11 AM
Reopened because if this was back ported to 1.5, we should do the same for 2.0.

Claudio Valderrama C. added a comment - 17/Nov/07 12:50 AM
Backported to v2.0.X as well.