quickfix-developers Mailing List for QuickFIX (Page 259)
Brought to you by:
orenmnero
You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
|
Feb
(5) |
Mar
(16) |
Apr
(15) |
May
(17) |
Jun
(33) |
Jul
(35) |
Aug
(34) |
Sep
(19) |
Oct
(40) |
Nov
(51) |
Dec
(43) |
2003 |
Jan
(45) |
Feb
(79) |
Mar
(124) |
Apr
(121) |
May
(132) |
Jun
(77) |
Jul
(110) |
Aug
(57) |
Sep
(48) |
Oct
(83) |
Nov
(60) |
Dec
(40) |
2004 |
Jan
(67) |
Feb
(72) |
Mar
(74) |
Apr
(87) |
May
(70) |
Jun
(96) |
Jul
(75) |
Aug
(147) |
Sep
(128) |
Oct
(83) |
Nov
(67) |
Dec
(42) |
2005 |
Jan
(110) |
Feb
(84) |
Mar
(68) |
Apr
(55) |
May
(51) |
Jun
(192) |
Jul
(111) |
Aug
(100) |
Sep
(79) |
Oct
(127) |
Nov
(73) |
Dec
(112) |
2006 |
Jan
(95) |
Feb
(120) |
Mar
(138) |
Apr
(127) |
May
(124) |
Jun
(97) |
Jul
(103) |
Aug
(88) |
Sep
(138) |
Oct
(91) |
Nov
(112) |
Dec
(57) |
2007 |
Jan
(55) |
Feb
(35) |
Mar
(56) |
Apr
(16) |
May
(20) |
Jun
(77) |
Jul
(43) |
Aug
(47) |
Sep
(29) |
Oct
(54) |
Nov
(39) |
Dec
(40) |
2008 |
Jan
(69) |
Feb
(79) |
Mar
(122) |
Apr
(106) |
May
(114) |
Jun
(76) |
Jul
(83) |
Aug
(71) |
Sep
(53) |
Oct
(75) |
Nov
(54) |
Dec
(43) |
2009 |
Jan
(32) |
Feb
(31) |
Mar
(64) |
Apr
(48) |
May
(38) |
Jun
(43) |
Jul
(35) |
Aug
(15) |
Sep
(52) |
Oct
(62) |
Nov
(62) |
Dec
(21) |
2010 |
Jan
(44) |
Feb
(10) |
Mar
(47) |
Apr
(22) |
May
(5) |
Jun
(54) |
Jul
(19) |
Aug
(54) |
Sep
(16) |
Oct
(15) |
Nov
(7) |
Dec
(8) |
2011 |
Jan
(18) |
Feb
(9) |
Mar
(5) |
Apr
(5) |
May
(41) |
Jun
(40) |
Jul
(29) |
Aug
(17) |
Sep
(12) |
Oct
(23) |
Nov
(22) |
Dec
(11) |
2012 |
Jan
(8) |
Feb
(24) |
Mar
(5) |
Apr
(5) |
May
(6) |
Jun
(5) |
Jul
(5) |
Aug
(5) |
Sep
(2) |
Oct
(9) |
Nov
(2) |
Dec
(18) |
2013 |
Jan
(25) |
Feb
(16) |
Mar
(8) |
Apr
(2) |
May
(16) |
Jun
(17) |
Jul
(2) |
Aug
(13) |
Sep
(3) |
Oct
(4) |
Nov
(1) |
Dec
|
2014 |
Jan
(2) |
Feb
|
Mar
(22) |
Apr
(9) |
May
(3) |
Jun
(1) |
Jul
(5) |
Aug
(11) |
Sep
(18) |
Oct
(4) |
Nov
(4) |
Dec
(3) |
2015 |
Jan
(2) |
Feb
|
Mar
|
Apr
(3) |
May
(4) |
Jun
(37) |
Jul
|
Aug
(4) |
Sep
(6) |
Oct
(1) |
Nov
(4) |
Dec
(2) |
2016 |
Jan
(9) |
Feb
(3) |
Mar
(7) |
Apr
(1) |
May
(8) |
Jun
|
Jul
|
Aug
|
Sep
(7) |
Oct
(3) |
Nov
(16) |
Dec
|
2017 |
Jan
(1) |
Feb
(15) |
Mar
(2) |
Apr
(12) |
May
(4) |
Jun
(7) |
Jul
(5) |
Aug
|
Sep
|
Oct
|
Nov
(23) |
Dec
(8) |
2018 |
Jan
(2) |
Feb
(4) |
Mar
(2) |
Apr
(8) |
May
(3) |
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
2019 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
|
Oct
(5) |
Nov
(3) |
Dec
|
2020 |
Jan
|
Feb
(4) |
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
(12) |
Aug
(5) |
Sep
(3) |
Oct
(1) |
Nov
|
Dec
(1) |
2021 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
2022 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2025 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Casey F. <cas...@ya...> - 2003-11-19 20:04:49
|
On that last e-mail, I meant to say: "...Any suggestions as to what is wrong? I have installed on my machine VC6.0, VC#.net 2002, and VC++.NET 2003 and VB.NET 2003. Do I need VC#.net 2003? Regards, Ivan __________________________________ Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard http://antispam.yahoo.com/whatsnewfree |
From: Daniel M. <Dan...@ma...> - 2003-11-19 20:04:24
|
QuickFix will work with 4.3, some of the examples show 4.3 connections. I build the lib using VC .Net 2003. When you open the projects for the first time (both quickfix and examples) it needs to convert them, but after that they compile and run fine. I do believe Oren uses VC 6.0 for his development. Daniel =20 -----Original Message----- From: Casey Figueredo [mailto:cas...@ya...]=20 Sent: Wednesday, November 19, 2003 3:00 PM To: Daniel May Cc: qui...@li... Subject: Re: [Quickfix-developers] Test FIX engine Thanks, That is what I am going to try. A couple of questions to any one out there: 1) Will QuickFix work with FIX 4.3? 2) I was able to compile the VC6.0 libraries ok (at least I think so, I got no errors on the compile, but have not tested them yet.) My question is, when I try to build the .NET libraries, or even just the sample programs, I get several messages boxes, each saying something like this: =3D=3D=3D=3D=3D Microsoft Development Environment The application for project 'E:\quickFIX\examples\executor\c++\executor_cpp.vcproj' in not installed Make sure the application for the project type .vcproj is installed. =3D=3D=3D And yet when I look inside 'E:\quickFIX\examples\executor\c++\, there is an executor_cpp.vcproj file.=20 Any suggestions as to what is wrong? I have installed on my machine VC6.0, VC#.net 2003, and VC.net 2002. Do I need 2003? Regards, Ivan --- Daniel May <Dan...@ma...> wrote: > Try http:://www.openfix.net >=20 > OpenFIX is a free session-level testing tool.=20 >=20 >=20 > Daniel >=20 >=20 >=20 >=20 >=20 > --__--__-- >=20 > Message: 3 > Date: Mon, 17 Nov 2003 14:48:54 -0800 (PST) > From: Casey Figueredo <cas...@ya...> > To: qui...@li... > Subject: [Quickfix-developers] Test FIX engine >=20 > Hi, >=20 > Is there a test FIX engine (on the Internet) that I could test your=20 > FIX client against? >=20 > Thanks in advance. >=20 > Regards, >=20 > Ivan >=20 > __________________________________ > Do you Yahoo!? > Protect your identity with Yahoo! Mail AddressGuard=20 > http://antispam.yahoo.com/whatsnewfree >=20 >=20 >=20 > --__--__-- >=20 > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers >=20 >=20 > End of Quickfix-developers Digest >=20 __________________________________ Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard http://antispam.yahoo.com/whatsnewfree |
From: Casey F. <cas...@ya...> - 2003-11-19 19:59:34
|
Thanks, That is what I am going to try. A couple of questions to any one out there: 1) Will QuickFix work with FIX 4.3? 2) I was able to compile the VC6.0 libraries ok (at least I think so, I got no errors on the compile, but have not tested them yet.) My question is, when I try to build the .NET libraries, or even just the sample programs, I get several messages boxes, each saying something like this: ===== Microsoft Development Environment The application for project 'E:\quickFIX\examples\executor\c++\executor_cpp.vcproj' in not installed Make sure the application for the project type .vcproj is installed. === And yet when I look inside 'E:\quickFIX\examples\executor\c++\, there is an executor_cpp.vcproj file. Any suggestions as to what is wrong? I have installed on my machine VC6.0, VC#.net 2003, and VC.net 2002. Do I need 2003? Regards, Ivan --- Daniel May <Dan...@ma...> wrote: > Try http:://www.openfix.net > > OpenFIX is a free session-level testing tool. > > > Daniel > > > > > > --__--__-- > > Message: 3 > Date: Mon, 17 Nov 2003 14:48:54 -0800 (PST) > From: Casey Figueredo <cas...@ya...> > To: qui...@li... > Subject: [Quickfix-developers] Test FIX engine > > Hi, > > Is there a test FIX engine (on the Internet) that I > could test your FIX > client against? > > Thanks in advance. > > Regards, > > Ivan > > __________________________________ > Do you Yahoo!? > Protect your identity with Yahoo! Mail AddressGuard > http://antispam.yahoo.com/whatsnewfree > > > > --__--__-- > > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers > > > End of Quickfix-developers Digest > __________________________________ Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard http://antispam.yahoo.com/whatsnewfree |
From: LeRoi B. <le...@pe...> - 2003-11-19 07:11:12
|
Hi Any Idea when this will be available ? I know about the COFF Error (number of sections exceeded blah blah) Anyone know how I can get past this (other than splitting up the header files ... ?) Tx Bye Le Roi |
From: Howard E. <ho...@ex...> - 2003-11-18 16:10:33
|
Hello J=C3=B6rg, Thanks for the info. I should have checked the spec myself. I can take a look at changing it accordingly. The nice thing about this solution is that it required only minor changes to the lib, and no changes to any of the interfaces. I'm not sure, but I think I would need to make more significant changes to implement it as you suggest. I think the way to do it would be to enable the SocketAcceptor in its onConnect method to check for an existing connection using that session and then drop if one is found. If you could point me in the direction of a simpler solution, I'd be happy to take a look. Regarding Unit/Acceptance testing, what would you need for that? (This is my first time contributing to an open source project.) As for the ResetSeqNum code, I will send you my version of Session.cpp. Thanks again, Howard On Tue, 2003-11-18 at 10:42, qui...@li... wrote: > Message: 2 > Date: Tue, 18 Nov 2003 15:08:48 +0100 > From: Joerg Thoennes <Joe...@ma...> > Organization: Macdonald Associates > To: ho...@ex... > CC: QuickFIX Questions <qui...@li...> > Subject: Re: [Quickfix-developers] Contributing code >=20 > Hi Howard, >=20 > > Issue #1 > > If a FIX client connects to the QuickFIX acceptor, using a SessionID=20 > > already in use, it fouls the state of the Session object associated w= ith=20 > > that SessionID resulting in the Second connection being dropped, but = the=20 > > first connection no longer calling events on the Application class. = It=20 > > is also impossible to prevent the second connection from being accept= ed=20 > > within the Application class override, because the OnLogon event is=20 > > never raised. > >=20 > > Fix > > My fix for this solution is to disconnect an existing connection when= a=20 > > second connection with a "connected" SessionID comes in. The first=20 > > connection is disconnected (App gets LogOut event) and the second=20 > > connection is accepted (App gets Logon event). >=20 > The FIX 4.3 spec says in the chapter "FIX Session-level Testcases and=20 > Expected Behaviour", section "Test Cases" on page 39: >=20 > b. Logon message received with duplicate identity (e. g. same IP, port, > SenderCompID, TargetCompID, etc. as existing connection) >=20 > 1. Generate an "error" condition in test output. > 2. Disconnect without sending a message (note sending a Reject or Logou= t > would consume a MsgSeqNum) >=20 > IMHO, this solution violates the FIX spec. The second connection attemp= t=20 > should be dropped. Could you implement this? >=20 > > Modules Affected: (Acceptor.cpp, SocketConnection.cpp) > > Modules Affected: (Session.cpp) >=20 > It would be nice to have the complete changed files. Doing diff against= =20 > the current CVS version is quite easy. Thanks! >=20 > Cheers, J=C3=B6rg >=20 > --=20 > Joerg Thoennes > http://macd.com > Tel.: +49 (0)241 44597-24 Macdonald Associates GmbH > Fax : +49 (0)241 44597-10 Lothringer Str. 52, D-52070 Aachen >=20 >=20 >=20 > --__--__-- >=20 > Message: 3 > Subject: RE: [Quickfix-developers] Contributing code > Date: Tue, 18 Nov 2003 08:24:11 -0600 > From: "James C. Downs" <jc...@co...> > To: "Joerg Thoennes" <Joe...@ma...>, > <ho...@ex...> > Cc: "QuickFIX Questions" <qui...@li...> >=20 > PE1FVEEgSFRUUC1FUVVJVj0iQ29udGVudC1UeXBlIiBDT05URU5UPSJ0ZXh0L2h0bWw7IGN= oYXJz > ZXQ9dXRmLTgiPgo8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgMy4= yLy9F > TiI+CjxIVE1MPgo8SEVBRD4KCjxNRVRBIE5BTUU9IkdlbmVyYXRvciIgQ09OVEVOVD0iTVM= gRXhj > aGFuZ2UgU2VydmVyIHZlcnNpb24gNi4wLjY0ODcuMSI+CjxUSVRMRT5SZTogW1F1aWNrZml= 4LWRl > dmVsb3BlcnNdIENvbnRyaWJ1dGluZyBjb2RlPC9USVRMRT4KPC9IRUFEPgo8Qk9EWSBkaXI= 9bHRy > Pgo8RElWPkluIGtlZXBpbmcgd2l0aCB0aGUgc3Bpcml0IGluIHdoaWNoIFF1aWNrRml4IHd= hcyBk > ZXZlbG9wZWQsIElNSE8sSSBmZWVsIAp0aGF0ICh3aGVyZSBhcHByb3ByaWF0ZSkgY29kZSB= jb250 > cmlidXRpb25zIHNob3VsZCBiZSBhY2NvbXBhbmllZCB3aXRoIHVuaXQgCmFuZC9vciBhY2N= lcHRh > bmNlIHRlc3RzLjwvRElWPgo8RElWPiZuYnNwOzwvRElWPgo8RElWPiZuYnNwOzwvRElWPgo= 8RElW > PkppbSBEb3duczwvRElWPgo8QkxPQ0tRVU9URSBkaXI9bHRyIHN0eWxlPSJNQVJHSU4tUkl= HSFQ6 > IDBweCI+CiAgPERJVj48Rk9OVCBzaXplPTI+LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0= gPEJS > PjxCPkZyb206PC9CPiAKICBxdWlja2ZpeC1kZXZlbG9wZXJzLWFkbWluQGxpc3RzLnNvdXJ= jZWZv > cmdlLm5ldCZuYnNwO29uIGJlaGFsZiBvZiZuYnNwO0pvZXJnIAogIFRob2VubmVzIDxCUj4= 8Qj5T > ZW50OjwvQj4gVHVlIDExLzE4LzIwMDMgODowOCBBTSA8QlI+PEI+VG86PC9CPiAKICBob3d= hcmRA > ZXhhZC5jb20gPEJSPjxCPkNjOjwvQj4gUXVpY2tGSVggUXVlc3Rpb25zIDxCUj48Qj5TdWJ= qZWN0 > OjwvQj4gUmU6IAogIFtRdWlja2ZpeC1kZXZlbG9wZXJzXSBDb250cmlidXRpbmcgY29kZTx= CUj48 > QlI+PC9GT05UPjwvRElWPgogIDxQPjxGT05UIHNpemU9Mj5IaSBIb3dhcmQsPEJSPjxCUj4= mZ3Q7 > IElzc3VlICMxPEJSPiZndDsgSWYgYSBGSVggY2xpZW50IAogIGNvbm5lY3RzIHRvIHRoZSB= RdWlj > a0ZJWCBhY2NlcHRvciwgdXNpbmcgYSBTZXNzaW9uSUQ8QlI+Jmd0OyBhbHJlYWR5IGluIHV= zZSwg > CiAgaXQgZm91bHMgdGhlIHN0YXRlIG9mIHRoZSBTZXNzaW9uIG9iamVjdCBhc3NvY2lhdGV= kIHdp > dGg8QlI+Jmd0OyB0aGF0IAogIFNlc3Npb25JRCByZXN1bHRpbmcgaW4gdGhlIFNlY29uZCB= jb25u > ZWN0aW9uIGJlaW5nIGRyb3BwZWQsIGJ1dCB0aGU8QlI+Jmd0OyAKICBmaXJzdCBjb25uZWN= 0aW9u > IG5vIGxvbmdlciBjYWxsaW5nIGV2ZW50cyBvbiB0aGUgQXBwbGljYXRpb24gY2xhc3MuJm5= ic3A7 > IAogIEl0PEJSPiZndDsgaXMgYWxzbyBpbXBvc3NpYmxlIHRvIHByZXZlbnQgdGhlIHNlY29= uZCBj > b25uZWN0aW9uIGZyb20gYmVpbmcgCiAgYWNjZXB0ZWQ8QlI+Jmd0OyB3aXRoaW4gdGhlIEF= wcGxp > Y2F0aW9uIGNsYXNzIG92ZXJyaWRlLCBiZWNhdXNlIHRoZSBPbkxvZ29uIAogIGV2ZW50IGl= zPEJS > PiZndDsgbmV2ZXIgcmFpc2VkLjxCUj4mZ3Q7PEJSPiZndDsgRml4PEJSPiZndDsgTXkgZml= 4IGZv > ciB0aGlzIAogIHNvbHV0aW9uIGlzIHRvIGRpc2Nvbm5lY3QgYW4gZXhpc3RpbmcgY29ubmV= jdGlv > biB3aGVuIGE8QlI+Jmd0OyBzZWNvbmQgCiAgY29ubmVjdGlvbiB3aXRoIGEgImNvbm5lY3R= lZCIg > U2Vzc2lvbklEIGNvbWVzIGluLiZuYnNwOyBUaGUgZmlyc3Q8QlI+Jmd0OyAKICBjb25uZWN= 0aW9u > IGlzIGRpc2Nvbm5lY3RlZCAoQXBwIGdldHMgTG9nT3V0IGV2ZW50KSBhbmQgdGhlIHNlY29= uZDxC > Uj4mZ3Q7IAogIGNvbm5lY3Rpb24gaXMgYWNjZXB0ZWQgKEFwcCBnZXRzIExvZ29uIGV2ZW5= 0KS48 > QlI+PEJSPlRoZSBGSVggNC4zIHNwZWMgc2F5cyBpbiAKICB0aGUgY2hhcHRlciAiRklYIFN= lc3Np > b24tbGV2ZWwgVGVzdGNhc2VzIGFuZDxCUj5FeHBlY3RlZCBCZWhhdmlvdXIiLCBzZWN0aW9= uIAog > ICJUZXN0IENhc2VzIiBvbiBwYWdlIDM5OjxCUj48QlI+Yi4gTG9nb24gbWVzc2FnZSByZWN= laXZl > ZCB3aXRoIGR1cGxpY2F0ZSAKICBpZGVudGl0eSAoZS4gZy4gc2FtZSBJUCwgcG9ydCw8QlI= +Jm5i > c3A7Jm5ic3A7Jm5ic3A7IFNlbmRlckNvbXBJRCwgCiAgVGFyZ2V0Q29tcElELCBldGMuIGF= zIGV4 > aXN0aW5nIGNvbm5lY3Rpb24pPEJSPjxCUj4xLiBHZW5lcmF0ZSBhbiAiZXJyb3IiIAogIGN= vbmRp > dGlvbiBpbiB0ZXN0IG91dHB1dC48QlI+Mi4gRGlzY29ubmVjdCB3aXRob3V0IHNlbmRpbmc= gYSBt > ZXNzYWdlIChub3RlIAogIHNlbmRpbmcgYSBSZWplY3Qgb3IgTG9nb3V0PEJSPiZuYnNwOyZ= uYnNw > OyZuYnNwOyB3b3VsZCBjb25zdW1lIGEgCiAgTXNnU2VxTnVtKTxCUj48QlI+SU1ITywgdGh= pcyBz > b2x1dGlvbiB2aW9sYXRlcyB0aGUgRklYIHNwZWMuIFRoZSBzZWNvbmQgCiAgY29ubmVjdGl= vbiBh > dHRlbXB0PEJSPnNob3VsZCBiZSBkcm9wcGVkLiBDb3VsZCB5b3UgaW1wbGVtZW50IHRoaXM= /PEJS > PjxCUj4mZ3Q7IAogIE1vZHVsZXMgQWZmZWN0ZWQ6IChBY2NlcHRvci5jcHAsIFNvY2tldEN= vbm5l > Y3Rpb24uY3BwKTxCUj4mZ3Q7IE1vZHVsZXMgCiAgQWZmZWN0ZWQ6IChTZXNzaW9uLmNwcCk= 8QlI+ > PEJSPkl0IHdvdWxkIGJlIG5pY2UgdG8gaGF2ZSB0aGUgY29tcGxldGUgY2hhbmdlZCAKICB= maWxl > cy4gRG9pbmcgZGlmZiBhZ2FpbnN0PEJSPnRoZSBjdXJyZW50IENWUyB2ZXJzaW9uIGlzIHF= 1aXRl > IGVhc3kuIAogIFRoYW5rcyE8QlI+PEJSPkNoZWVycywgSsO2cmc8QlI+PEJSPi0tPEJSPkp= vZXJn > IAogIFRob2VubmVzPEJSPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZ= uYnNw > OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnN= wOyZu > YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZ= uYnNw > OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAKICA8QSBocmVmPSJodHRwOi8vbWF= jZC5j > b20iPmh0dHA6Ly9tYWNkLmNvbTwvQT48QlI+VGVsLjogKzQ5ICgwKTI0MSAKICA0NDU5Ny0= yNCZu > YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBNYWNkb25hbGQgQXNzb2NpYXRlcyBHbWJ= IPEJS > PkZheCA6ICs0OSAKICAoMCkyNDEgNDQ1OTctMTAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs= mbmJz > cDsgTG90aHJpbmdlciBTdHIuIDUyLCBELTUyMDcwIAogIEFhY2hlbjxCUj48QlI+PEJSPjx= CUj4t > LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0= tPEJS > PlRoaXMgCiAgU0YuIE5ldCBlbWFpbCBpcyBzcG9uc29yZWQgYnk6IEdvVG9NeVBDPEJSPkd= vVG9N > eVBDIGlzIHRoZSBmYXN0LCBlYXN5IGFuZCAKICBzZWN1cmUgd2F5IHRvIGFjY2VzcyB5b3V= yIGNv > bXB1dGVyIGZyb208QlI+YW55IFdlYiBicm93c2VyIG9yIHdpcmVsZXNzIGRldmljZS4gCiA= gQ2xp > Y2sgaGVyZSB0byBUcnkgaXQgRnJlZSE8QlI+PEEgCiAgaHJlZj0iaHR0cHM6Ly93d3cuZ29= 0b215 > cGMuY29tL3RyL09TRE4vQVcvUTRfMjAwMy90L2cyMmxwP1RhcmdldD1tbS9nMjJscC50bXB= sIj5o > dHRwczovL3d3dy5nb3RvbXlwYy5jb20vdHIvT1NETi9BVy9RNF8yMDAzL3QvZzIybHA/VGF= yZ2V0 > PW1tL2cyMmxwLnRtcGw8L0E+PEJSPl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19= fX19f > X19fX19fX19fX19fPEJSPlF1aWNrZml4LWRldmVsb3BlcnMgCiAgbWFpbGluZyBsaXN0PEJ= SPlF1 > aWNrZml4LWRldmVsb3BlcnNAbGlzdHMuc291cmNlZm9yZ2UubmV0PEJSPjxBIAogIGhyZWY= 9Imh0 > dHBzOi8vbGlzdHMuc291cmNlZm9yZ2UubmV0L2xpc3RzL2xpc3RpbmZvL3F1aWNrZml4LWR= ldmVs > b3BlcnMiPmh0dHBzOi8vbGlzdHMuc291cmNlZm9yZ2UubmV0L2xpc3RzL2xpc3RpbmZvL3F= 1aWNr > Zml4LWRldmVsb3BlcnM8L0E+PEJSPjwvRk9OVD48L1A+PC9CTE9DS1FVT1RFPgoKPC9CT0R= ZPgo8 > L0hUTUw+ >=20 >=20 > --__--__-- >=20 > Message: 4 > Date: Tue, 18 Nov 2003 15:46:04 +0100 > From: Joerg Thoennes <Joe...@ma...> > Organization: Macdonald Associates > To: "James C. Downs" <jc...@co...> > CC: ho...@ex...,=20 > QuickFIX Questions <qui...@li...> > Subject: Re: [Quickfix-developers] Contributing code >=20 > James C. Downs wrote: > > In keeping with the spirit in which QuickFix was developed, IMHO,I fe= el=20 > > that (where appropriate) code contributions should be accompanied wit= h=20 > > unit and/or acceptance tests. >=20 > Thanks, Jim. I really forgot to mention that. Actually, we should only=20 > need unit tests. The acceptence test of QuickFIX have been taken from=20 > the specs "FIX Session-level test cases and expected behaviour". Maybe=20 > for the ResetSeqNum feature there is no such test since QuickFIX did no= t=20 > implement it so far. >=20 > Howard, if you send me the files I will start integrating them into the= =20 > current CVS. >=20 > Cheers, J=C3=83=C2=B6rg |
From: Oren M. <ore...@ya...> - 2003-11-18 16:02:19
|
Verma, This store is a persistant storage device that keeps track of everything required to recover the state of the fix engine. It only stores what is absolutely necessary. For instance, only outgoing messages are stored because they are the only ones required to recover a session. The state is kept only for the duration of a session and is reset at the start of a new session. The log is an actual record of everything that occurs complete with timestamps. The incoming and outgoing logs show messages being transmitted back and forth, and the event log displays any unusual events that occur with descriptive text. The logs build up over time and are a record of all occurances that is never reset but appended to. The store is required for a session to exist, while the log is optional. "Verma, Sanjay" <SV...@Cr...> wrote: Why does QF store messages in a "Log" and a "MessageStore" ? I am trying to write a class that uses Sybase for storing messages and would like to understand the rationale behind using log and store rather than a single store of messages with the necessary funcationality. Thanks. DISCLAIMER e-mail, and any attachments thereto, is intended only for use by the addressee(s) named herein and may contain legally privileged and/or confidential information. If you are not the intended recipient of this e-mail, you are hereby notified that any dissemination, distribution or copying of this e-mail, and any attachments thereto, is strictly prohibited. If you have received this e-mail in error, please immediately notify me and permanently delete the original and any copy of any e-mail and any printout thereof. E-mail transmission cannot be guaranteed to be secure or error-free. The sender therefore does not accept liability for any errors or omissions in the contents of this message which arise as a result of e-mail transmission. REGARDING PRIVACY AND CONFIDENTIALITY Crown Financial Group may, at its discretion, monitor and review the content of all e-mail communications. --------------------------------- Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard |
From: Oren M. <ore...@ya...> - 2003-11-18 15:55:39
|
Yes, this is correct. Kalidas Y <kal...@be...> wrote:Hi Pre: In the following link: http://quickfix.thoughtworks.com/quickfix/doc/html/project.html Instructions for setting up new project are given there for Windows ( C++ ). Problem: Do the following directories need to be set in "Tools->Options" of MSDev ? Tools | Options | Directories | Add path for "D:\Adapters\FIX\QuickFIX\quickfix-1.6.0\include" and "D:\Adapters\FIX\QuickFIX\quickfix-1.6.0\lib" Please clarify in this regard. Thanks and Regards Y Kalidas --------------------------------- Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard |
From: Oren M. <ore...@ya...> - 2003-11-18 15:41:08
|
Anton, I've added wrappers for these methods into the .NET library in source control. Let me know how it goes. Anton_Varnäs <va...@kt...> wrote: Oren, Has this issue been altered? Best Regards, Anton Varnäs ----- Original Message ----- From: "Anton Varnäs" Sent: Thursday, October 23, 2003 10:07 AM Oren, I am using release 1.6.0 for the moment, but could use any release if the features where available in another. ( I have need for at least fix 4.3, though) Best Regards, Anton ----- Original Message ----- From: "Miller, Oren" Sent: Wednesday, October 22, 2003 7:15 PM Can you specify which version of QF you are using? -----Original Message----- From: Anton Varnäs [mailto:ant...@sm...] Sent: Wednesday, October 22, 2003 7:14 AM Hello, I would like to use the following members in Message/Group (FieldMap) with the .NET dll. (with C#) void FieldMap::setField (int field, const std::string value) std::string FieldMap::getField (int field) const throw ( FieldNotFound& ) void removeField (int field) bool hasGroup (int field) const int groupCount (int field) const I cannot find them with the XML completion and my code does not compile. How can I use these members? Best Regards, Anton Varnäs ------------------------------------------------------- This SF.net email is sponsored by OSDN developer relations Here's your chance to show off your extensive product knowledge We want to know what you know. Tell us and you have a chance to win $100 http://www.zoomerang.com/survey.zgi?HRPT1X3RYQNC5V4MLNSV3E54 _______________________________________________ Quickfix-developers mailing list Qui...@li... https://lists.sourceforge.net/lists/listinfo/quickfix-developers ------------------------------------------------------- This SF.net email is sponsored by OSDN developer relations Here's your chance to show off your extensive product knowledge We want to know what you know. Tell us and you have a chance to win $100 http://www.zoomerang.com/survey.zgi?HRPT1X3RYQNC5V4MLNSV3E54 _______________________________________________ Quickfix-developers mailing list Qui...@li... https://lists.sourceforge.net/lists/listinfo/quickfix-developers ------------------------------------------------------- This SF.net email is sponsored by OSDN developer relations Here's your chance to show off your extensive product knowledge We want to know what you know. Tell us and you have a chance to win $100 http://www.zoomerang.com/survey.zgi?HRPT1X3RYQNC5V4MLNSV3E54 _______________________________________________ Quickfix-developers mailing list Qui...@li... https://lists.sourceforge.net/lists/listinfo/quickfix-developers ------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ _______________________________________________ Quickfix-developers mailing list Qui...@li... https://lists.sourceforge.net/lists/listinfo/quickfix-developers --------------------------------- Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard |
From: Joerg T. <Joe...@ma...> - 2003-11-18 14:46:32
|
James C. Downs wrote: > In keeping with the spirit in which QuickFix was developed, IMHO,I feel > that (where appropriate) code contributions should be accompanied with > unit and/or acceptance tests. Thanks, Jim. I really forgot to mention that. Actually, we should only need unit tests. The acceptence test of QuickFIX have been taken from the specs "FIX Session-level test cases and expected behaviour". Maybe for the ResetSeqNum feature there is no such test since QuickFIX did not implement it so far. Howard, if you send me the files I will start integrating them into the current CVS. Cheers, Jörg -- Joerg Thoennes http://macd.com Tel.: +49 (0)241 44597-24 Macdonald Associates GmbH Fax : +49 (0)241 44597-10 Lothringer Str. 52, D-52070 Aachen |
From: James C. D. <jc...@co...> - 2003-11-18 14:24:47
|
PE1FVEEgSFRUUC1FUVVJVj0iQ29udGVudC1UeXBlIiBDT05URU5UPSJ0ZXh0L2h0bWw7IGNoYXJz ZXQ9dXRmLTgiPgo8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgMy4yLy9F TiI+CjxIVE1MPgo8SEVBRD4KCjxNRVRBIE5BTUU9IkdlbmVyYXRvciIgQ09OVEVOVD0iTVMgRXhj aGFuZ2UgU2VydmVyIHZlcnNpb24gNi4wLjY0ODcuMSI+CjxUSVRMRT5SZTogW1F1aWNrZml4LWRl dmVsb3BlcnNdIENvbnRyaWJ1dGluZyBjb2RlPC9USVRMRT4KPC9IRUFEPgo8Qk9EWSBkaXI9bHRy Pgo8RElWPkluIGtlZXBpbmcgd2l0aCB0aGUgc3Bpcml0IGluIHdoaWNoIFF1aWNrRml4IHdhcyBk ZXZlbG9wZWQsIElNSE8sSSBmZWVsIAp0aGF0ICh3aGVyZSBhcHByb3ByaWF0ZSkgY29kZSBjb250 cmlidXRpb25zIHNob3VsZCBiZSBhY2NvbXBhbmllZCB3aXRoIHVuaXQgCmFuZC9vciBhY2NlcHRh bmNlIHRlc3RzLjwvRElWPgo8RElWPiZuYnNwOzwvRElWPgo8RElWPiZuYnNwOzwvRElWPgo8RElW PkppbSBEb3duczwvRElWPgo8QkxPQ0tRVU9URSBkaXI9bHRyIHN0eWxlPSJNQVJHSU4tUklHSFQ6 IDBweCI+CiAgPERJVj48Rk9OVCBzaXplPTI+LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0gPEJS PjxCPkZyb206PC9CPiAKICBxdWlja2ZpeC1kZXZlbG9wZXJzLWFkbWluQGxpc3RzLnNvdXJjZWZv cmdlLm5ldCZuYnNwO29uIGJlaGFsZiBvZiZuYnNwO0pvZXJnIAogIFRob2VubmVzIDxCUj48Qj5T ZW50OjwvQj4gVHVlIDExLzE4LzIwMDMgODowOCBBTSA8QlI+PEI+VG86PC9CPiAKICBob3dhcmRA ZXhhZC5jb20gPEJSPjxCPkNjOjwvQj4gUXVpY2tGSVggUXVlc3Rpb25zIDxCUj48Qj5TdWJqZWN0 OjwvQj4gUmU6IAogIFtRdWlja2ZpeC1kZXZlbG9wZXJzXSBDb250cmlidXRpbmcgY29kZTxCUj48 QlI+PC9GT05UPjwvRElWPgogIDxQPjxGT05UIHNpemU9Mj5IaSBIb3dhcmQsPEJSPjxCUj4mZ3Q7 IElzc3VlICMxPEJSPiZndDsgSWYgYSBGSVggY2xpZW50IAogIGNvbm5lY3RzIHRvIHRoZSBRdWlj a0ZJWCBhY2NlcHRvciwgdXNpbmcgYSBTZXNzaW9uSUQ8QlI+Jmd0OyBhbHJlYWR5IGluIHVzZSwg CiAgaXQgZm91bHMgdGhlIHN0YXRlIG9mIHRoZSBTZXNzaW9uIG9iamVjdCBhc3NvY2lhdGVkIHdp dGg8QlI+Jmd0OyB0aGF0IAogIFNlc3Npb25JRCByZXN1bHRpbmcgaW4gdGhlIFNlY29uZCBjb25u ZWN0aW9uIGJlaW5nIGRyb3BwZWQsIGJ1dCB0aGU8QlI+Jmd0OyAKICBmaXJzdCBjb25uZWN0aW9u IG5vIGxvbmdlciBjYWxsaW5nIGV2ZW50cyBvbiB0aGUgQXBwbGljYXRpb24gY2xhc3MuJm5ic3A7 IAogIEl0PEJSPiZndDsgaXMgYWxzbyBpbXBvc3NpYmxlIHRvIHByZXZlbnQgdGhlIHNlY29uZCBj b25uZWN0aW9uIGZyb20gYmVpbmcgCiAgYWNjZXB0ZWQ8QlI+Jmd0OyB3aXRoaW4gdGhlIEFwcGxp Y2F0aW9uIGNsYXNzIG92ZXJyaWRlLCBiZWNhdXNlIHRoZSBPbkxvZ29uIAogIGV2ZW50IGlzPEJS PiZndDsgbmV2ZXIgcmFpc2VkLjxCUj4mZ3Q7PEJSPiZndDsgRml4PEJSPiZndDsgTXkgZml4IGZv ciB0aGlzIAogIHNvbHV0aW9uIGlzIHRvIGRpc2Nvbm5lY3QgYW4gZXhpc3RpbmcgY29ubmVjdGlv biB3aGVuIGE8QlI+Jmd0OyBzZWNvbmQgCiAgY29ubmVjdGlvbiB3aXRoIGEgImNvbm5lY3RlZCIg U2Vzc2lvbklEIGNvbWVzIGluLiZuYnNwOyBUaGUgZmlyc3Q8QlI+Jmd0OyAKICBjb25uZWN0aW9u IGlzIGRpc2Nvbm5lY3RlZCAoQXBwIGdldHMgTG9nT3V0IGV2ZW50KSBhbmQgdGhlIHNlY29uZDxC Uj4mZ3Q7IAogIGNvbm5lY3Rpb24gaXMgYWNjZXB0ZWQgKEFwcCBnZXRzIExvZ29uIGV2ZW50KS48 QlI+PEJSPlRoZSBGSVggNC4zIHNwZWMgc2F5cyBpbiAKICB0aGUgY2hhcHRlciAiRklYIFNlc3Np b24tbGV2ZWwgVGVzdGNhc2VzIGFuZDxCUj5FeHBlY3RlZCBCZWhhdmlvdXIiLCBzZWN0aW9uIAog ICJUZXN0IENhc2VzIiBvbiBwYWdlIDM5OjxCUj48QlI+Yi4gTG9nb24gbWVzc2FnZSByZWNlaXZl ZCB3aXRoIGR1cGxpY2F0ZSAKICBpZGVudGl0eSAoZS4gZy4gc2FtZSBJUCwgcG9ydCw8QlI+Jm5i c3A7Jm5ic3A7Jm5ic3A7IFNlbmRlckNvbXBJRCwgCiAgVGFyZ2V0Q29tcElELCBldGMuIGFzIGV4 aXN0aW5nIGNvbm5lY3Rpb24pPEJSPjxCUj4xLiBHZW5lcmF0ZSBhbiAiZXJyb3IiIAogIGNvbmRp dGlvbiBpbiB0ZXN0IG91dHB1dC48QlI+Mi4gRGlzY29ubmVjdCB3aXRob3V0IHNlbmRpbmcgYSBt ZXNzYWdlIChub3RlIAogIHNlbmRpbmcgYSBSZWplY3Qgb3IgTG9nb3V0PEJSPiZuYnNwOyZuYnNw OyZuYnNwOyB3b3VsZCBjb25zdW1lIGEgCiAgTXNnU2VxTnVtKTxCUj48QlI+SU1ITywgdGhpcyBz b2x1dGlvbiB2aW9sYXRlcyB0aGUgRklYIHNwZWMuIFRoZSBzZWNvbmQgCiAgY29ubmVjdGlvbiBh dHRlbXB0PEJSPnNob3VsZCBiZSBkcm9wcGVkLiBDb3VsZCB5b3UgaW1wbGVtZW50IHRoaXM/PEJS PjxCUj4mZ3Q7IAogIE1vZHVsZXMgQWZmZWN0ZWQ6IChBY2NlcHRvci5jcHAsIFNvY2tldENvbm5l Y3Rpb24uY3BwKTxCUj4mZ3Q7IE1vZHVsZXMgCiAgQWZmZWN0ZWQ6IChTZXNzaW9uLmNwcCk8QlI+ PEJSPkl0IHdvdWxkIGJlIG5pY2UgdG8gaGF2ZSB0aGUgY29tcGxldGUgY2hhbmdlZCAKICBmaWxl cy4gRG9pbmcgZGlmZiBhZ2FpbnN0PEJSPnRoZSBjdXJyZW50IENWUyB2ZXJzaW9uIGlzIHF1aXRl IGVhc3kuIAogIFRoYW5rcyE8QlI+PEJSPkNoZWVycywgSsO2cmc8QlI+PEJSPi0tPEJSPkpvZXJn IAogIFRob2VubmVzPEJSPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAKICA8QSBocmVmPSJodHRwOi8vbWFjZC5j b20iPmh0dHA6Ly9tYWNkLmNvbTwvQT48QlI+VGVsLjogKzQ5ICgwKTI0MSAKICA0NDU5Ny0yNCZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBNYWNkb25hbGQgQXNzb2NpYXRlcyBHbWJIPEJS PkZheCA6ICs0OSAKICAoMCkyNDEgNDQ1OTctMTAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsgTG90aHJpbmdlciBTdHIuIDUyLCBELTUyMDcwIAogIEFhY2hlbjxCUj48QlI+PEJSPjxCUj4t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPEJS PlRoaXMgCiAgU0YuIE5ldCBlbWFpbCBpcyBzcG9uc29yZWQgYnk6IEdvVG9NeVBDPEJSPkdvVG9N eVBDIGlzIHRoZSBmYXN0LCBlYXN5IGFuZCAKICBzZWN1cmUgd2F5IHRvIGFjY2VzcyB5b3VyIGNv bXB1dGVyIGZyb208QlI+YW55IFdlYiBicm93c2VyIG9yIHdpcmVsZXNzIGRldmljZS4gCiAgQ2xp Y2sgaGVyZSB0byBUcnkgaXQgRnJlZSE8QlI+PEEgCiAgaHJlZj0iaHR0cHM6Ly93d3cuZ290b215 cGMuY29tL3RyL09TRE4vQVcvUTRfMjAwMy90L2cyMmxwP1RhcmdldD1tbS9nMjJscC50bXBsIj5o dHRwczovL3d3dy5nb3RvbXlwYy5jb20vdHIvT1NETi9BVy9RNF8yMDAzL3QvZzIybHA/VGFyZ2V0 PW1tL2cyMmxwLnRtcGw8L0E+PEJSPl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fPEJSPlF1aWNrZml4LWRldmVsb3BlcnMgCiAgbWFpbGluZyBsaXN0PEJSPlF1 aWNrZml4LWRldmVsb3BlcnNAbGlzdHMuc291cmNlZm9yZ2UubmV0PEJSPjxBIAogIGhyZWY9Imh0 dHBzOi8vbGlzdHMuc291cmNlZm9yZ2UubmV0L2xpc3RzL2xpc3RpbmZvL3F1aWNrZml4LWRldmVs b3BlcnMiPmh0dHBzOi8vbGlzdHMuc291cmNlZm9yZ2UubmV0L2xpc3RzL2xpc3RpbmZvL3F1aWNr Zml4LWRldmVsb3BlcnM8L0E+PEJSPjwvRk9OVD48L1A+PC9CTE9DS1FVT1RFPgoKPC9CT0RZPgo8 L0hUTUw+ |
From: Joerg T. <Joe...@ma...> - 2003-11-18 14:08:53
|
Hi Howard, > Issue #1 > If a FIX client connects to the QuickFIX acceptor, using a SessionID > already in use, it fouls the state of the Session object associated with > that SessionID resulting in the Second connection being dropped, but the > first connection no longer calling events on the Application class. It > is also impossible to prevent the second connection from being accepted > within the Application class override, because the OnLogon event is > never raised. > > Fix > My fix for this solution is to disconnect an existing connection when a > second connection with a "connected" SessionID comes in. The first > connection is disconnected (App gets LogOut event) and the second > connection is accepted (App gets Logon event). The FIX 4.3 spec says in the chapter "FIX Session-level Testcases and Expected Behaviour", section "Test Cases" on page 39: b. Logon message received with duplicate identity (e. g. same IP, port, SenderCompID, TargetCompID, etc. as existing connection) 1. Generate an "error" condition in test output. 2. Disconnect without sending a message (note sending a Reject or Logout would consume a MsgSeqNum) IMHO, this solution violates the FIX spec. The second connection attempt should be dropped. Could you implement this? > Modules Affected: (Acceptor.cpp, SocketConnection.cpp) > Modules Affected: (Session.cpp) It would be nice to have the complete changed files. Doing diff against the current CVS version is quite easy. Thanks! Cheers, Jörg -- Joerg Thoennes http://macd.com Tel.: +49 (0)241 44597-24 Macdonald Associates GmbH Fax : +49 (0)241 44597-10 Lothringer Str. 52, D-52070 Aachen |
From: Howard E. <ho...@ex...> - 2003-11-18 13:50:01
|
I have made minor modifications to the qf lib to fix the following two issues. These changes have been tested and running on our servers without problems. I hope they can be added for future release. thanks, Howard Issues: 1.) A second socket connection (to acceptor) made using a SessionID already in uses causes the library to behave erratically. 2.) FIX Field 141 (ResetSeqNumFlag) on the Logon Message is ignored. Issue #1 If a FIX client connects to the QuickFIX acceptor, using a SessionID already in use, it fouls the state of the Session object associated with that SessionID resulting in the Second connection being dropped, but the first connection no longer calling events on the Application class. It is also impossible to prevent the second connection from being accepted within the Application class override, because the OnLogon event is never raised. Fix My fix for this solution is to disconnect an existing connection when a second connection with a "connected" SessionID comes in. The first connection is disconnected (App gets LogOut event) and the second connection is accepted (App gets Logon event). Modules Affected: (Acceptor.cpp, SocketConnection.cpp) Acceptor.cpp ====================================== Method: Acceptor::getSession, at line 149 Adding the disconnect line will cause any existing session using that SessionID to be LoggedOff and the socket connection to be closed. If there is no connection currently using that SessionID the call is harmless. Change --------------- Sessions::iterator i = m_sessions.find( sessionID ); if ( i != m_sessions.end() ) { i->second->setResponder( &responder ); return i->second; } To --------------- Sessions::iterator i = m_sessions.find( sessionID ); if ( i != m_sessions.end() ) { // ADD THE NEXT LINE i->second->disconnect(); i->second->setResponder( &responder ); return i->second; } SocketConnection.cpp ====================================== Method: SocketConnection::disconnect This clearing the Session ptr of a SocketConnection prevents the Session disconnect method from being called twice (called the first time in the Acceptor::getSession method) when the SocketMonitor drop is processed. Change --------------- void SocketConnection::disconnect() { QF_STACK_PUSH(SocketConnection::disconnect) if ( m_pMonitor ) m_pMonitor->drop( m_socket ); QF_STACK_POP } To --------------- void SocketConnection::disconnect() { QF_STACK_PUSH(SocketConnection::disconnect) // ADD THE NEXT LINE m_pSession = 0; if ( m_pMonitor ) m_pMonitor->drop( m_socket ); QF_STACK_POP } Issue #2 The ResetSeqNumFlag tag is ignored when Sessions logon to quickfix server. Fix Add code to the Session::nextLogon and the Session::generateLogon methods to handle the request. I list the diffs, followed by the full modified methods Modules Affected: (Session.cpp) Session.cpp ====================================== Method: Session::nextLogon Remove ------------ < bool verified = verify( logon, false, true ); Add ------------ > ResetSeqNumFlag resetSeqNumFlag(false); > logon.getField(resetSeqNumFlag); > > bool verified = verify( logon, false, (false == resetSeqNumFlag.getValue()) ); 213a217,224 > if (resetSeqNumFlag.getValue() == true) > { > m_state.onEvent( "Received Logon with SequenceReset FROM: " > + IntConvertor::convert(getExpectedTargetNum()) + > " TO: 1" ); > m_state.store()->reset(); > } > Method: Session::generateLogon Add ------------ 544a556,563 > > if (aLogon.isSetField(FIELD::ResetSeqNumFlag)) > { > ResetSeqNumFlag resetSeqNumFlag(false); > aLogon.getField(resetSeqNumFlag); > logon.setField(resetSeqNumFlag); > } > void Session::nextLogon( const Message& logon ) { QF_STACK_PUSH(Session::nextLogon) if ( m_state.shouldSendLogon() ) { m_state.onEvent( "Received logon response before sending request" ); disconnect(); return ; } SenderCompID senderCompID; TargetCompID targetCompID; logon.getHeader().getField( senderCompID ); logon.getHeader().getField( targetCompID ); ResetSeqNumFlag resetSeqNumFlag(false); logon.getField(resetSeqNumFlag); bool verified = verify( logon, false, (false == resetSeqNumFlag.getValue()) ); if ( isCorrectCompID( senderCompID, targetCompID ) ) m_state.receivedLogon( true ); if ( !verified ) return ; if ( !m_state.initiate() ) { logon.getField( m_state.heartBtInt() ); m_state.onEvent( "Received logon request" ); generateLogon( logon ); m_state.onEvent( "Responding to logon request" ); } else m_state.onEvent( "Received logon response" ); if (resetSeqNumFlag.getValue() == true) { m_state.onEvent( "Received Logon with SequenceReset FROM: " + IntConvertor::convert(getExpectedTargetNum()) + " TO: 1" ); m_state.store()->reset(); } MsgSeqNum msgSeqNum; logon.getHeader().getField( msgSeqNum ); if ( isTargetTooHigh( msgSeqNum ) ) { doTargetTooHigh( logon ); } else { m_state.incrNextTargetMsgSeqNum(); nextQueued(); } if ( isLoggedOn() ) m_application.onLogon( m_sessionID ); QF_STACK_POP } void Session::generateLogon( const Message& aLogon ) { QF_STACK_PUSH(Session::generateLogon) Message logon; EncryptMethod encryptMethod; HeartBtInt heartBtInt; logon.setField( EncryptMethod( 0 ) ); aLogon.getField( heartBtInt ); logon.getHeader().setField( MsgType( "A" ) ); logon.setField( heartBtInt ); if (aLogon.isSetField(FIELD::ResetSeqNumFlag)) { ResetSeqNumFlag resetSeqNumFlag(false); aLogon.getField(resetSeqNumFlag); logon.setField(resetSeqNumFlag); } fill( logon.getHeader() ); sendRaw( logon ); m_state.sentLogon( true ); QF_STACK_POP } On Mon, 2003-11-17 at 23:24, qui...@li... wrote: > > --__--__-- > > Message: 2 > Subject: Re: [Quickfix-developers] Contributing code > Date: Mon, 17 Nov 2003 12:02:23 -0600 > From: "Miller, Oren" <OM...@ri...> > To: <ho...@ex...>, > <qui...@li...> > > Post them to this list. > > -------------------------- > Sent from my BlackBerry Wireless Handheld > > > -----Original Message----- > From: Howard Engelhart <ho...@ex...> > To: QuickFIX Questions <qui...@li...> > Sent: Mon Nov 17 11:43:03 2003 > Subject: [Quickfix-developers] Contributing code > > I have made a couple of minor changes to the QuickFIX lib that I would = > like to submit for review for possible inclusion into the next version = > of QuickFIX. Is that possible? If so how should I proceed? > > Thanks, > > Howard > ho...@ex... > |
From: Daniel M. <Dan...@ma...> - 2003-11-18 11:23:46
|
Try http:://www.openfix.net=20 OpenFIX is a free session-level testing tool.=20 Daniel --__--__-- Message: 3 Date: Mon, 17 Nov 2003 14:48:54 -0800 (PST) From: Casey Figueredo <cas...@ya...> To: qui...@li... Subject: [Quickfix-developers] Test FIX engine Hi, Is there a test FIX engine (on the Internet) that I could test your FIX client against? Thanks in advance. Regards, Ivan __________________________________ Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard http://antispam.yahoo.com/whatsnewfree --__--__-- _______________________________________________ Quickfix-developers mailing list Qui...@li... https://lists.sourceforge.net/lists/listinfo/quickfix-developers End of Quickfix-developers Digest |
From: Casey F. <cas...@ya...> - 2003-11-17 22:48:55
|
Hi, Is there a test FIX engine (on the Internet) that I could test your FIX client against? Thanks in advance. Regards, Ivan __________________________________ Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard http://antispam.yahoo.com/whatsnewfree |
From: Miller, O. <OM...@ri...> - 2003-11-17 18:03:05
|
Post them to this list. -------------------------- Sent from my BlackBerry Wireless Handheld -----Original Message----- From: Howard Engelhart <ho...@ex...> To: QuickFIX Questions <qui...@li...> Sent: Mon Nov 17 11:43:03 2003 Subject: [Quickfix-developers] Contributing code I have made a couple of minor changes to the QuickFIX lib that I would = like to submit for review for possible inclusion into the next version = of QuickFIX. Is that possible? If so how should I proceed? Thanks, Howard ho...@ex... |
From: Howard E. <ho...@ex...> - 2003-11-17 17:44:02
|
I have made a couple of minor changes to the QuickFIX lib that I would like to submit for review for possible inclusion into the next version of QuickFIX. Is that possible? If so how should I proceed? Thanks, Howard ho...@ex... |
From: Kalidas Y <kal...@be...> - 2003-11-17 09:34:29
|
Log and Message StoreHi Pre: In the following link: = http://quickfix.thoughtworks.com/quickfix/doc/html/project.html Instructions for setting up new project are given there for Windows ( = C++ ). Problem: Do the following directories need to be set in "Tools->Options" of = MSDev ? Tools | Options | Directories | Add path for "D:\Adapters\FIX\QuickFIX\quickfix-1.6.0\include" and "D:\Adapters\FIX\QuickFIX\quickfix-1.6.0\lib" Please clarify in this regard. Thanks and Regards Y Kalidas |
From: Daniel M. <Dan...@ma...> - 2003-11-17 00:01:22
|
Sanjay, The log is optional, and is provided only for your convenience. The store is required and there is the option to use MySQL instead of the native file system. You can define your own LogFactory and dictate how and what gets logged, or not use a log at all. For example, assume you are creating an acceptor (look in executor.cpp as an example). You could either use the provided FIX::ScreenLogFactory(true,true,true), which would log all in messages, out messages, and events to the stdout. Or you could disable in and out messages and only log events with the call FIX::ScreenLogFactory(false,false,true). The Acceptor class has a constructor that allows you to skip logging all together by not specifying a log factory, for example: FIX::SessionSettings settings( file ); Application application; FIX::FileStoreFactory factory( settings ); FIX::SocketAcceptor acceptor( application, factory, settings); The log and the store are independent of each other, look at MySQLStore.cpp/h, FileStore.cpp/h, and MessageStore.cpp/h to get a starting point for implementing your own store. Daniel -----Original Message----- From: qui...@li... [mailto:qui...@li...] On Behalf Of qui...@li... Sent: Friday, November 14, 2003 11:24 PM To: qui...@li... Subject: Quickfix-developers digest, Vol 1 #368 - 1 msg Send Quickfix-developers mailing list submissions to qui...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/quickfix-developers or, via email, send a message with subject or body 'help' to qui...@li... You can reach the person managing the list at qui...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of Quickfix-developers digest..." Today's Topics: 1. Log and Message Store (Verma, Sanjay) --__--__-- Message: 1 From: "Verma, Sanjay" <SV...@Cr...> To: "'qui...@li...'" <qui...@li...> Date: Fri, 14 Nov 2003 17:09:29 -0500 Subject: [Quickfix-developers] Log and Message Store This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. ------_=3D_NextPart_001_01C3AAFB.F982ADB0 Content-Type: text/plain; charset=3D"iso-8859-1" Why does QF store messages in a "Log" and a "MessageStore" ? I am trying to write a class that uses Sybase for storing messages and would like to understand the rationale behind using log and store rather than a single store of messages with the necessary funcationality. Thanks. DISCLAIMER e-mail, and any attachments thereto, is intended only for use by the addressee(s) named herein and may contain legally privileged and/or confidential information. If you are not the intended recipient of this e-mail, you are hereby notified that any dissemination, distribution or copying of this e-mail, and any attachments thereto, is strictly prohibited. If you have received this e-mail in error, please immediately notify me and permanently delete the original and any copy of any e-mail and any printout thereof. E-mail transmission cannot be guaranteed to be secure or error-free. The sender therefore does not accept liability for any errors or omissions in the contents of this message which arise as a result of e-mail transmission. REGARDING PRIVACY AND CONFIDENTIALITY Crown Financial Group may, at its discretion, monitor and review the content of all e-mail communications. ------_=3D_NextPart_001_01C3AAFB.F982ADB0 Content-Type: text/html; charset=3D"iso-8859-1" Content-Transfer-Encoding: quoted-printable <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <HTML> <HEAD> <META HTTP-EQUIV=3D3D"Content-Type" CONTENT=3D3D"text/html; =3D charset=3D3Diso-8859-1"> <META NAME=3D3D"Generator" CONTENT=3D3D"MS = Exchange Server version =3D 5.5.2654.45"> <TITLE>Log and Message Store</TITLE> </HEAD> <BODY> <P><FONT SIZE=3D3D2 FACE=3D3D"Arial">Why does QF store messages in a =3D "Log" and a "MessageStore" ? I am trying to write a =3D class that uses Sybase for storing messages and would like to =3D understand the rationale behind using log and store rather than a =3D single store of messages with the necessary funcationality.</FONT></P> <P><FONT SIZE=3D3D2 FACE=3D3D"Arial">Thanks.</FONT> <BR><FONT SIZE=3D3D2 FACE=3D3D"Arial">DISCLAIMER</FONT> <BR><FONT SIZE=3D3D2 FACE=3D3D"Arial">e-mail, and any attachments thereto, =3D is intended = only for use by the addressee(s) named herein and may =3D contain legally privileged and/or confidential information. If you are =3D not the intended recipient of this e-mail, you are hereby notified that =3D any dissemination, distribution or copying of this e-mail, and any =3D attachments thereto, is strictly prohibited. If you have received this = =3D e-mail in error, please immediately notify me and permanently delete =3D the original and any copy of any e-mail and any printout =3D thereof.</FONT></P> <P><FONT SIZE=3D3D2 FACE=3D3D"Arial">E-mail transmission cannot be =3D guaranteed to be secure or error-free. The sender therefore does not =3D accept liability for any errors or omissions in the contents of this =3D message which arise as a result of e-mail transmission.</FONT></P> <P><FONT SIZE=3D3D2 FACE=3D3D"Arial">REGARDING PRIVACY AND =3D CONFIDENTIALITY</FONT> <BR><FONT SIZE=3D3D2 FACE=3D3D"Arial">Crown = Financial Group may, at its =3D discretion, monitor and review the content of all e-mail =3D communications.</FONT> </P> </BODY> </HTML> ------_=3D_NextPart_001_01C3AAFB.F982ADB0-- --__--__-- _______________________________________________ Quickfix-developers mailing list Qui...@li... https://lists.sourceforge.net/lists/listinfo/quickfix-developers End of Quickfix-developers Digest |
From: Verma, S. <SV...@Cr...> - 2003-11-14 22:09:37
|
Why does QF store messages in a "Log" and a "MessageStore" ? I am trying to write a class that uses Sybase for storing messages and would like to understand the rationale behind using log and store rather than a single store of messages with the necessary funcationality. Thanks. DISCLAIMER e-mail, and any attachments thereto, is intended only for use by the addressee(s) named herein and may contain legally privileged and/or confidential information. If you are not the intended recipient of this e-mail, you are hereby notified that any dissemination, distribution or copying of this e-mail, and any attachments thereto, is strictly prohibited. If you have received this e-mail in error, please immediately notify me and permanently delete the original and any copy of any e-mail and any printout thereof. E-mail transmission cannot be guaranteed to be secure or error-free. The sender therefore does not accept liability for any errors or omissions in the contents of this message which arise as a result of e-mail transmission. REGARDING PRIVACY AND CONFIDENTIALITY Crown Financial Group may, at its discretion, monitor and review the content of all e-mail communications. |
From: <sri...@rh...> - 2003-11-12 21:26:32
|
In SessionState.H foolowing definition bool withinHeartBeat() const { UtcTimeStamp now; return ( ( now - lastSentTime() ) < heartBtInt() ) && ( ( now - lastReceivedTime() ) < heartBtInt() ); } does this need to be=20 return ( ( now - lastSentTime() ) < heartBtInt() ) || =20 ( ( now - lastReceivedTime() ) < heartBtInt() ); Please note || in place of && Srinivas |
From: Vitor C. <vc...@hi...> - 2003-11-12 16:24:17
|
Hello to all, I've been using QF for some time now, at the moment I'm using QF 1.6.0, but recently I've come across a behaviour from QF that I wasn't expecting and I can't understand how I've never found it before: I'm developing an Initiator application (more specifically a Windows service Initiator, using ThreadedSocketInitiator) that I wanted to start automatically on boot time and have QF start the session/s whenever the start time for the session/s came. And I thought that QF did this. But to my surprise I found that if I started the initiator before the session/s start time, that/those session/s would never start. Furthermore, I found that after the session/s end time the initiator would disconnect from the other side, but remained trying to connect every ReconnectInterval. Because of this I have to make sure of two things: first I must start the initiator after all the sessions StartTime has passed and second if I don't want the Eventlog to became full of failed connection attempts I must stop the initiator after the EndTime of all the sessions has passed. Although this isn't quite easy to accomplish I feel I'm missing something here. Can anyone clarify these issues? Is this the expected behaviour of this version of QF? Did any of these changed from the previous versions? Thanks in advance Vitor Castro | DIS <mailto:vc...@hi...> |
From: Alex <ax...@m-...> - 2003-11-11 01:45:46
|
I am wondering if there are prebuilt quickfix binaries for windowsNT. Or if there is a windows compiler I can download that can build quickfix. I looked on the microsoft site but can't find any. Thanks, Alex |
From: Oren M. <ore...@ya...> - 2003-11-10 20:01:52
|
I checked in a new version of FieldConvertors.h and FieldConvertorsTestCase.h that will take care of this problem. --- Vitor Castro <vc...@hi...> wrote: > Hello to all, > > Has anyone encountered prolems with execution > reports where the > counterparty sent prices < 1, formated like 000.60? > In my case I'm > using QF 1.6.0 and FIX 4.1 specs, and the engine > handles the leading 0's > well when the price is above 1, but when I'm sent a > LastPx=000.60 QF > rejects the message saying 'Incorrect Tag format'. > I've searched the FIX > specifications for version 4.1 and nothing is said > about leading 0's, > but in the latest FIX specs leading 0's are OK to > use. > > Any comments? > > > > > > Vitor Castro | DIS > <mailto:vc...@hi...> > > > __________________________________ Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard http://antispam.yahoo.com/whatsnewfree |
From: Vitor C. <vc...@hi...> - 2003-11-10 10:56:27
|
Hello to all, =20 Has anyone encountered prolems with execution reports where the counterparty sent prices < 1=88, formated like 000.60? In my case I'm using QF 1.6.0 and FIX 4.1 specs, and the engine handles the leading 0's well when the price is above 1=88, but when I'm sent a LastPx=3D000.60 = QF rejects the message saying 'Incorrect Tag format'. I've searched the FIX specifications for version 4.1 and nothing is said about leading 0's, but in the latest FIX specs leading 0's are OK to use. =20 Any comments? =20 =20 =20 =20 Vitor Castro | DIS <mailto:vc...@hi...> =20 |
From: <ili...@bn...> - 2003-11-07 18:50:42
|
You rule Oren! The quotes in the text message where messing with our DB requests. Everything works now. Many thanks, Ilyas Internet ore...@ya... - 07/11/2003 18:55 Pour : Ilias USAL, quickfix-developers cc : Objet : Re: [Quickfix-developers] Sequence numbers not incrementing Is there a carraige return in your text field? I wonder if it may be having a problem with that. --- ili...@bn... wrote: > Hello, > > I'm experiencing a very serious problem with the > last realease of QuickFix. When I send out an > EXECUTION REPORT with OrderStatus 'REJECTED' > or an ORDER CANCEL REJECT, the sendToTarget fails, > and the next message has the exact same sequence > number, which causes the connection > to end. > > I'm sending the message using > if > (FIX::Session::sendToTarget(*pc_FixMessage,sessionID)) > { > gc_Program.Log().info("Send msg fix...OK"); > } > else > { > gc_Program.Log().info("Send msg fix...KO"); > } > > Here's an excerpt of my log file: > > Send application message : > > 8=FIX.4.29=31235=834=30749=***52=20031107-15:27:4956=***128=***1=*** > > 6=0.00000011=030311070000007R14=015=GBp17=20031107152742092320=022=231=0.00000032=0 > > 37=2368438=20039=840=148=092528854=255=GB000925288258=Counterparty > is unknown > > 59=075=20031107109=100259120=GBp150=8151=20010=188 > Send msg fix...KO > Send HeartBeat SeqNum: 307 > > 8=FIX.4.29=5435=034=30749=BPEFRTSTEST52=20031107-15:28:4956=TS10=118 > > The crazy thing is that the message is received at > the other end of the line. > > Did anyone experience the same problem, or better > yet, does anyone has a solution? > > Many thanks, > Ilyas USAL > > > > > This message and any attachments (the "message") is > intended solely for the addressees and is > confidential. > If you receive this message in error, please delete > it and immediately notify the sender. Any use not in > accord with > its purpose, any dissemination or disclosure, either > whole or partial, is prohibited except formal > approval. > The internet can not guarantee the integrity of this > message. BNP PARIBAS (and its subsidiaries) shall > (will) not > therefore be liable for the message if modified. > > > --------------------------------------------- > > Ce message et toutes les pieces jointes (ci-apres le > "message") sont etablis a l'intention exclusive de > ses > destinataires et sont confidentiels. Si vous recevez > ce message par erreur, merci de le detruire et d'en > avertir > immediatement l'expediteur. Toute utilisation de ce > message non conforme a sa destination, toute > diffusion > ou toute publication, totale ou partielle, est > interdite, sauf autorisation expresse. L'internet ne > permettant pas > d'assurer l'integrite de ce message, BNP PARIBAS (et > ses filiales) decline(nt) toute responsabilite au > titre de ce > message, dans l'hypothese ou il aurait ete modifie. > > > > ------------------------------------------------------- > This SF.net email is sponsored by: SF.net Giveback > Program. > Does SourceForge.net help you be more productive? > Does it > help you create better code? SHARE THE LOVE, and > help us help > YOU! Click Here: http://sourceforge.net/donate/ > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers __________________________________ Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard http://antispam.yahoo.com/whatsnewfree This message and any attachments (the "message") is intended solely for the addressees and is confidential. If you receive this message in error, please delete it and immediately notify the sender. Any use not in accord with its purpose, any dissemination or disclosure, either whole or partial, is prohibited except formal approval. The internet can not guarantee the integrity of this message. BNP PARIBAS (and its subsidiaries) shall (will) not therefore be liable for the message if modified. --------------------------------------------- Ce message et toutes les pieces jointes (ci-apres le "message") sont etablis a l'intention exclusive de ses destinataires et sont confidentiels. Si vous recevez ce message par erreur, merci de le detruire et d'en avertir immediatement l'expediteur. Toute utilisation de ce message non conforme a sa destination, toute diffusion ou toute publication, totale ou partielle, est interdite, sauf autorisation expresse. L'internet ne permettant pas d'assurer l'integrite de ce message, BNP PARIBAS (et ses filiales) decline(nt) toute responsabilite au titre de ce message, dans l'hypothese ou il aurait ete modifie. |