cppcms-users Mailing List for CppCMS C++ Web Framework (Page 128)
Brought to you by:
artyom-beilis
You can subscribe to this list here.
2009 |
Jan
|
Feb
(22) |
Mar
|
Apr
(3) |
May
|
Jun
(4) |
Jul
|
Aug
|
Sep
|
Oct
(15) |
Nov
(16) |
Dec
(13) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2010 |
Jan
(4) |
Feb
|
Mar
(8) |
Apr
(8) |
May
(8) |
Jun
(36) |
Jul
(63) |
Aug
(126) |
Sep
(47) |
Oct
(66) |
Nov
(46) |
Dec
(42) |
2011 |
Jan
(87) |
Feb
(24) |
Mar
(54) |
Apr
(21) |
May
(22) |
Jun
(18) |
Jul
(22) |
Aug
(101) |
Sep
(57) |
Oct
(33) |
Nov
(34) |
Dec
(66) |
2012 |
Jan
(64) |
Feb
(76) |
Mar
(73) |
Apr
(105) |
May
(93) |
Jun
(83) |
Jul
(84) |
Aug
(88) |
Sep
(57) |
Oct
(59) |
Nov
(35) |
Dec
(49) |
2013 |
Jan
(67) |
Feb
(17) |
Mar
(49) |
Apr
(64) |
May
(87) |
Jun
(64) |
Jul
(93) |
Aug
(23) |
Sep
(15) |
Oct
(16) |
Nov
(62) |
Dec
(73) |
2014 |
Jan
(5) |
Feb
(23) |
Mar
(21) |
Apr
(11) |
May
(1) |
Jun
(19) |
Jul
(27) |
Aug
(16) |
Sep
(5) |
Oct
(37) |
Nov
(12) |
Dec
(9) |
2015 |
Jan
(7) |
Feb
(7) |
Mar
(44) |
Apr
(28) |
May
(5) |
Jun
(12) |
Jul
(8) |
Aug
|
Sep
(39) |
Oct
(34) |
Nov
(30) |
Dec
(34) |
2016 |
Jan
(66) |
Feb
(23) |
Mar
(33) |
Apr
(15) |
May
(11) |
Jun
(15) |
Jul
(26) |
Aug
(4) |
Sep
(1) |
Oct
(30) |
Nov
(10) |
Dec
|
2017 |
Jan
(52) |
Feb
(9) |
Mar
(24) |
Apr
(16) |
May
(9) |
Jun
(12) |
Jul
(33) |
Aug
(8) |
Sep
|
Oct
(1) |
Nov
(2) |
Dec
(6) |
2018 |
Jan
(5) |
Feb
|
Mar
|
Apr
|
May
(14) |
Jun
(1) |
Jul
(9) |
Aug
(1) |
Sep
(13) |
Oct
(8) |
Nov
(2) |
Dec
(2) |
2019 |
Jan
(1) |
Feb
(1) |
Mar
(3) |
Apr
(3) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
|
Dec
|
2020 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
(9) |
Jul
(6) |
Aug
(25) |
Sep
(10) |
Oct
(10) |
Nov
(6) |
Dec
|
2021 |
Jan
|
Feb
|
Mar
(7) |
Apr
(1) |
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
(9) |
Oct
(1) |
Nov
|
Dec
|
2022 |
Jan
|
Feb
|
Mar
|
Apr
(3) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Artyom <art...@ya...> - 2010-09-28 15:52:17
|
> >Hello, > >The cppcms FAQ suggests that the license may be changed from the current LGPL to > >something more permissive in the future. > Yes, but it is unlikely to happen. Also what would not happen is change of license to less permissive like GPL. I believe that LGPL is better license then licenses like MIT, BSD or Boost. > >I'd like to link cppcms with proprietary software targeting embedded devices. >For practical purposes LGPL is not suitable for embedded usage. > You basically have two choices: 1. Provide an ability to access to the software to upgrade the CppCMS library as LGPL requires: i.e. (a) you should like with shared version of the library (b) you should give an access to change the library for the device 2. Purchase a special license for your particular case, (i.e. dual licensing) > >Are there any plans to change the license to something more permissive in the >near future? > No I don't, however I do have plans for dual licensing of CppCMS exactly for such case. So basically you have two choices: 1. Follow LGPL restrictions. 2. Pay for alternative license. Artyom |
From: Grant G. <gr...@gr...> - 2010-09-28 14:42:40
|
Hello, The cppcms FAQ suggests that the license may be changed from the current LGPL to something more permissive in the future. I'd like to link cppcms with proprietary software targeting embedded devices. For practical purposes LGPL is not suitable for embedded usage. Are there any plans to change the license to something more permissive in the near future? Regards, Grant. |
From: Artyom <art...@ya...> - 2010-09-24 13:49:50
|
> Good morning Artyom. > >I have a question and I was trying to see if you might have a suggestion. > >I am building an application using cppcms, but part of my application involved >email and forums. I am planning to utilize phpbb for the forums, but the issue >I'm having, is that I only want the user to sign in once. > >So, user logs in, the default page is in the cppcms realm, they click on a link >to go to the forums. Any ideas how I would handle this? I'm running this >behind nginx, but from what I understand, session information is in cppcms, and >can't be accessed by phpbb. I could maybe modify phpbb's login code to instead >pull from a database or something, but I was wondering if there isn't something >simpler. One thing I thought about was maybe posting the login data to the >phpbb module (like through a url redirect) but I'm not confident in that. > > >Basically, cppcms gives my application so much more that I need that PHP can >not. However, I would like to cut down development time on features that exist >in open source locations, but most of those will utilize PHP. But I want to >present only 1 sign in for the user. > Basically you need to share some session information between phpbb (BTW great forum) and the CppCMS. I think the simplest would be to create a signed cookie that holds the username that marks that it was verified against the DB. I.e. you need a cookie that holds: 1. Some expiration date 2. User name 3. Signature (HMAC) Now, you would need to change PhpBB login to set such cookie (and probably renew its expiration) On the CppCMS side you would need to verify it. And of course both CppCMS Application and phpBB would need to adopt themselves for such cooperation. See following, <cppcms/crypto.h> for HMAC signature on CppCMS side PHP 5.1: hash_hmac http://us2.php.net/manual/en/function.hash-hmac.php And of course they should share same secret key. I don't think there is easier way to do. What is basically you need to implement a shared session and this is the easiest way to do this. Artyom |
From: matt p. <k3...@ho...> - 2010-09-24 12:36:15
|
Good morning Artyom. I have a question and I was trying to see if you might have a suggestion. I am building an application using cppcms, but part of my application involved email and forums. I am planning to utilize phpbb for the forums, but the issue I'm having, is that I only want the user to sign in once. So, user logs in, the default page is in the cppcms realm, they click on a link to go to the forums. Any ideas how I would handle this? I'm running this behind nginx, but from what I understand, session information is in cppcms, and can't be accessed by phpbb. I could maybe modify phpbb's login code to instead pull from a database or something, but I was wondering if there isn't something simpler. One thing I thought about was maybe posting the login data to the phpbb module (like through a url redirect) but I'm not confident in that. Basically, cppcms gives my application so much more that I need that PHP can not. However, I would like to cut down development time on features that exist in open source locations, but most of those will utilize PHP. But I want to present only 1 sign in for the user. Thanks! Matt |
From: Artyom <art...@ya...> - 2010-09-22 20:14:26
|
Hi, Very good point. It made me revisit the way I treat Content-Type header all over my code (for good). The fix is in SVN, not it parses content type correctly and relates to mime-type as to HTTP protocol RFC requires. Take an SVN update (don't forget that it is now from trunk and from refactoring branch) Artyom ----- Original Message ---- > From: Daniel Vallejos <chi...@gm...> > To: cpp...@li... > Sent: Wed, September 22, 2010 2:04:24 AM > Subject: [Cppcms-users] Rpc Json problem > > Hello. > > I have a problem with json_rpc class. > > I use Qooxdoo ajax framework. When this framework sends a request the > content type is: > > Content-Type = "application/json; charset=UTF-8" > > but CppCMS expect only "application/json". > > if(c.request().content_type()!="application/json") > throw call_error("Invalid content type"); > > Regards. > > > ------------------------------------------------------------------------------ > Start uncovering the many advantages of virtual appliances > and start using them to simplify application deployment and > accelerate your shift to cloud computing. > http://p.sf.net/sfu/novell-sfdev2dev > _______________________________________________ > Cppcms-users mailing list > Cpp...@li... > https://lists.sourceforge.net/lists/listinfo/cppcms-users > |
From: Daniel V. <chi...@gm...> - 2010-09-22 00:04:34
|
Hello. I have a problem with json_rpc class. I use Qooxdoo ajax framework. When this framework sends a request the content type is: Content-Type = "application/json; charset=UTF-8" but CppCMS expect only "application/json". if(c.request().content_type()!="application/json") throw call_error("Invalid content type"); Regards. |
From: Artyom <art...@ya...> - 2010-09-21 14:37:56
|
Hello CppCMS svn users, CppCMS 1.x.x moved to trunk and CppCMS 0.0.x moved to maintence branch. In order to continue to fetch CppCMS 1.x.x from SVN run in your working copy: svn switch https://cppcms.svn.sourceforge.net/svnroot/cppcms/framework/trunk or svn switch http://cppcms.svn.sourceforge.net/svnroot/cppcms/framework/trunk https/http - depending on how you initially checked out your working copy. Artyom |
From: Artyom <art...@ya...> - 2010-09-21 06:06:19
|
> First problem: > > [ 31%] Building CXX object CMakeFiles/cppcms.dir/src/crypto.cpp.o > In file included > from /home/daniel/development/cpp/projects/cppcms/src/crypto.cpp:31: > /home/daniel/development/cpp/projects/cppcms/private/sha1.h:21:35: > error: boost/static_assert.hpp: No such file or directory > > To fix that I change the line 31 > > -#include <boost/static_assert.hpp > +#include "cppcms_boost/static_assert.hpp" Thanks, Actually this header should not be at all. Fixed > > Second problem: > > [ 67%] Building CXX object > CMakeFiles/encryptor_test.dir/tests/encryptor_test.cpp.o > /home/daniel/development/cpp/projects/cppcms/tests/encryptor_test.cpp: > In function ‘std::string to_string(unsigned char*, size_t)’: > /home/daniel/development/cpp/projects/cppcms/tests/encryptor_test.cpp:91: >error: ‘sprintf’ was not declared in this scope > > > As you know I fixed that error with add #include <stdio.h> > Ok, fixed as well. Take svn update. Artyom |
From: Daniel V. <chi...@gm...> - 2010-09-21 05:52:14
|
Hello My Platform: Linux electroforce 2.6.33-020633-generic #020633 SMP Thu Feb 25 10:10:03 UTC 2010 x86_64 GNU/Linux gcc (Ubuntu 4.4.3-4ubuntu5) 4.4.3 First problem: [ 31%] Building CXX object CMakeFiles/cppcms.dir/src/crypto.cpp.o In file included from /home/daniel/development/cpp/projects/cppcms/src/crypto.cpp:31: /home/daniel/development/cpp/projects/cppcms/private/sha1.h:21:35: error: boost/static_assert.hpp: No such file or directory To fix that I change the line 31 -#include <boost/static_assert.hpp +#include "cppcms_boost/static_assert.hpp" Second problem: [ 67%] Building CXX object CMakeFiles/encryptor_test.dir/tests/encryptor_test.cpp.o /home/daniel/development/cpp/projects/cppcms/tests/encryptor_test.cpp: In function ‘std::string to_string(unsigned char*, size_t)’: /home/daniel/development/cpp/projects/cppcms/tests/encryptor_test.cpp:91: error: ‘sprintf’ was not declared in this scope As you know I fixed that error with add #include <stdio.h> Thanks for cppcms, great library. |
From: Artyom <art...@ya...> - 2010-09-16 21:10:57
|
Yes, indeed, if you don't use any advanced locale features then these small backends are the way to go. That is why I created them. Aryom > Yes, the POSIX locale support even under C appears to be weak for those > two BSD derived systems. However, this particular failure does not > disuade me from using the new POSIX backend, since I intend to do any > conversions or collation after normalizing input to UTF-8. This seemed > like an acceptable tradeoff versus linking with ICU. Fortunately it > appears the POSIX locale now passes all the tests in the UTF-8 encoding, > so thank you! > > Kevin |
From: Kevin A. <kev...@ne...> - 2010-09-16 20:42:07
|
Yes, the POSIX locale support even under C appears to be weak for those two BSD derived systems. However, this particular failure does not disuade me from using the new POSIX backend, since I intend to do any conversions or collation after normalizing input to UTF-8. This seemed like an acceptable tradeoff versus linking with ICU. Fortunately it appears the POSIX locale now passes all the tests in the UTF-8 encoding, so thank you! Kevin On 09/16/2010 04:18 PM, Artyom wrote: > Thanks, > > The test that fails in actually Mac libc issue > as it does not handle ISO-8859-1 encoding well in standard > library. (Same of FreeBSD, but BSD does not have _l API at all) > > I've marked for Apple not to do the test this specific one. > > Actually locale support on Mac is quite weak, for example > collation is quite useless and case handling is far from being > good. Basically what you have on Mac with POSIX backend is > messages, and localized data formatting like dates, times, > money etc. > > Thanks again, > Artyom > > > > ----- Original Message ---- >> From: Kevin Arunski<kev...@ne...> >> To: cpp...@li... >> Sent: Thu, September 16, 2010 10:08:49 PM >> Subject: Re: [Cppcms-users] Boost Locale: Undefined behavior in POSIX backend >> >> Here are the results from your SVN head. Note I disabled the ICU backend. >> >> make test >> Running tests... >> Test project $HOME/boost_locale_rework_build >> Start 1: test_codepage >> 1/10 Test #1: test_codepage .................... Passed 0.01 sec >> Start 2: test_message >> 2/10 Test #2: test_message ..................... Passed 0.02 sec >> Start 3: test_ios_prop >> 3/10 Test #3: test_ios_prop .................... Passed 0.00 sec >> Start 4: test_codepage_converter >> 4/10 Test #4: test_codepage_converter .......... Passed 0.00 sec >> Start 5: test_std_convert >> 5/10 Test #5: test_std_convert ................. Passed 0.00 sec >> Start 6: test_std_formatting >> 6/10 Test #6: test_std_formatting .............. Passed 0.00 sec >> Start 7: test_std_collate >> 7/10 Test #7: test_std_collate ................. Passed 0.00 sec >> Start 8: test_posix_collate >> 8/10 Test #8: test_posix_collate ............... Passed 0.00 sec >> Start 9: test_posix_convert >> 9/10 Test #9: test_posix_convert ...............***Failed 0.01 sec >> Start 10: test_posix_formatting >> 10/10 Test #10: test_posix_formatting ............ Passed 0.01 sec >> >> 90% tests passed, 1 tests failed out of 10 >> >> Total Test time (real) = 0.08 sec >> >> The following tests FAILED: >> 9 - test_posix_convert (Failed) >> Errors while running CTest >> make: *** [test] Error 8 >> >> >> Here is the output of the failed test: >> $ ./test_posix_convert >> Testing char >> - Testing at least C >> - Testing en_US.UTF-8 >> Testing en_US.ISO8859-1 >> Error in line:25 >> boost::locale::to_upper(to_correct_string<CharType>(src,l),l) == >> to_correct_string<CharType>(tgtu,l) >> Testing tr_TR.UTF-8 >> Turkish locale is not supported well >> Testing wchar_t >> - Testing at least C >> - Testing en_US.UTF-8 >> Testing en_US.ISO8859-1 >> Testing tr_TR.UTF-8 >> Turkish locale is not supported well >> >> Passed 25 tests >> Failed 1 tests >> 96.2% of tests completed sucsessefully >> >> >> On 09/16/2010 03:54 PM, Artyom wrote: >>> Thank you very much! >>> >>> I've got reports of faults on Mac OS X however I hadn't >>> this platform to debug. My brother usually helps >>> me with Mac platform, but now he is busy. >>> >>> Thank you for this good point. >>> >>> I commit the changes to both CppCMS and Boost.Locale >>> svn >>> >> (https://cppcms.svn.sourceforge.net/svnroot/cppcms/boost_locale/branches/rework) >>> >>> Would you be so kind to check if tests now pass and what fails? >>> >>> Thank you, >>> Artyom >>> >>> >>> >>> >>> >>> ----- Original Message ---- >>>> From: Kevin Arunski<kev...@ne...> >>>> To: cpp...@li... >>>> Sent: Thu, September 16, 2010 9:25:13 PM >>>> Subject: [Cppcms-users] Boost Locale: Undefined behavior in POSIX backend >>>> >>>> There is an issue in the POSIX backend that causes a crash on Mac OS X, >>>> and undefined behavior elsewhere. >>>> >>>> In file libs/locale/src/posix/codecvt.cpp: >>>> >>>> The declaration of iconv_t d at line 41 shadows the declaration of d at >>>> line 38. This causes undefined behavior at line 85 in the call to >>>> iconv_close. On Mac OS X this causes a crash, though I would expect >>>> there to be at least a memory leak on every platform. >>>> >>>> >>>> >> ------------------------------------------------------------------------------ >>>> Start uncovering the many advantages of virtual appliances >>>> and start using them to simplify application deployment and >>>> accelerate your shift to cloud computing. >>>> http://p.sf.net/sfu/novell-sfdev2dev >>>> _______________________________________________ >>>> Cppcms-users mailing list >>>> Cpp...@li... >>>> https://lists.sourceforge.net/lists/listinfo/cppcms-users >>>> >>> >>> >>> >>> >>> >> ------------------------------------------------------------------------------ >>> ; Start uncovering the many advantages of virtual appliances >>> and start using them to simplify application deployment and >>> accelerate your shift to cloud computing. >>> http://p.sf.net/sfu/novell-sfdev2dev >>> _______________________________________________ >>> Cppcms-users mailing list >>> Cpp...@li... >>> https://lists.sourceforge.net/lists/listinfo/cppcms-users >> >> ------------------------------------------------------------------------------ >> Start uncovering the many advantages of virtual appliances >> and start using them to simplify application deployment and >> accelerate your shift to cloud computing. >> http://p.sf.net/sfu/novell-sfdev2dev >> _______________________________________________ >> Cppcms-users mailing list >> Cpp...@li... >> https://lists.sourceforge.net/lists/listinfo/cppcms-users >> > > > > > ------------------------------------------------------------------------------ > Start uncovering the many advantages of virtual appliances > and start using them to simplify application deployment and > accelerate your shift to cloud computing. > http://p.sf.net/sfu/novell-sfdev2dev > _______________________________________________ > Cppcms-users mailing list > Cpp...@li... > https://lists.sourceforge.net/lists/listinfo/cppcms-users |
From: Artyom <art...@ya...> - 2010-09-16 20:18:37
|
Thanks, The test that fails in actually Mac libc issue as it does not handle ISO-8859-1 encoding well in standard library. (Same of FreeBSD, but BSD does not have _l API at all) I've marked for Apple not to do the test this specific one. Actually locale support on Mac is quite weak, for example collation is quite useless and case handling is far from being good. Basically what you have on Mac with POSIX backend is messages, and localized data formatting like dates, times, money etc. Thanks again, Artyom ----- Original Message ---- > From: Kevin Arunski <kev...@ne...> > To: cpp...@li... > Sent: Thu, September 16, 2010 10:08:49 PM > Subject: Re: [Cppcms-users] Boost Locale: Undefined behavior in POSIX backend > > Here are the results from your SVN head. Note I disabled the ICU backend. > > make test > Running tests... > Test project $HOME/boost_locale_rework_build > Start 1: test_codepage > 1/10 Test #1: test_codepage .................... Passed 0.01 sec > Start 2: test_message > 2/10 Test #2: test_message ..................... Passed 0.02 sec > Start 3: test_ios_prop > 3/10 Test #3: test_ios_prop .................... Passed 0.00 sec > Start 4: test_codepage_converter > 4/10 Test #4: test_codepage_converter .......... Passed 0.00 sec > Start 5: test_std_convert > 5/10 Test #5: test_std_convert ................. Passed 0.00 sec > Start 6: test_std_formatting > 6/10 Test #6: test_std_formatting .............. Passed 0.00 sec > Start 7: test_std_collate > 7/10 Test #7: test_std_collate ................. Passed 0.00 sec > Start 8: test_posix_collate > 8/10 Test #8: test_posix_collate ............... Passed 0.00 sec > Start 9: test_posix_convert > 9/10 Test #9: test_posix_convert ...............***Failed 0.01 sec > Start 10: test_posix_formatting > 10/10 Test #10: test_posix_formatting ............ Passed 0.01 sec > > 90% tests passed, 1 tests failed out of 10 > > Total Test time (real) = 0.08 sec > > The following tests FAILED: > 9 - test_posix_convert (Failed) > Errors while running CTest > make: *** [test] Error 8 > > > Here is the output of the failed test: > $ ./test_posix_convert > Testing char > - Testing at least C > - Testing en_US.UTF-8 > Testing en_US.ISO8859-1 > Error in line:25 > boost::locale::to_upper(to_correct_string<CharType>(src,l),l) == > to_correct_string<CharType>(tgtu,l) > Testing tr_TR.UTF-8 > Turkish locale is not supported well > Testing wchar_t > - Testing at least C > - Testing en_US.UTF-8 > Testing en_US.ISO8859-1 > Testing tr_TR.UTF-8 > Turkish locale is not supported well > > Passed 25 tests > Failed 1 tests > 96.2% of tests completed sucsessefully > > > On 09/16/2010 03:54 PM, Artyom wrote: > > Thank you very much! > > > > I've got reports of faults on Mac OS X however I hadn't > > this platform to debug. My brother usually helps > > me with Mac platform, but now he is busy. > > > > Thank you for this good point. > > > > I commit the changes to both CppCMS and Boost.Locale > > svn > > >(https://cppcms.svn.sourceforge.net/svnroot/cppcms/boost_locale/branches/rework) > > > > Would you be so kind to check if tests now pass and what fails? > > > > Thank you, > > Artyom > > > > > > > > > > > > ----- Original Message ---- > >> From: Kevin Arunski<kev...@ne...> > >> To: cpp...@li... > >> Sent: Thu, September 16, 2010 9:25:13 PM > >> Subject: [Cppcms-users] Boost Locale: Undefined behavior in POSIX backend > >> > >> There is an issue in the POSIX backend that causes a crash on Mac OS X, > >> and undefined behavior elsewhere. > >> > >> In file libs/locale/src/posix/codecvt.cpp: > >> > >> The declaration of iconv_t d at line 41 shadows the declaration of d at > >> line 38. This causes undefined behavior at line 85 in the call to > >> iconv_close. On Mac OS X this causes a crash, though I would expect > >> there to be at least a memory leak on every platform. > >> > >> > >> >------------------------------------------------------------------------------ > >> Start uncovering the many advantages of virtual appliances > >> and start using them to simplify application deployment and > >> accelerate your shift to cloud computing. > >> http://p.sf.net/sfu/novell-sfdev2dev > >> _______________________________________________ > >> Cppcms-users mailing list > >> Cpp...@li... > >> https://lists.sourceforge.net/lists/listinfo/cppcms-users > >> > > > > > > > > > > >------------------------------------------------------------------------------ > > ; Start uncovering the many advantages of virtual appliances > > and start using them to simplify application deployment and > > accelerate your shift to cloud computing. > > http://p.sf.net/sfu/novell-sfdev2dev > > _______________________________________________ > > Cppcms-users mailing list > > Cpp...@li... > > https://lists.sourceforge.net/lists/listinfo/cppcms-users > > ------------------------------------------------------------------------------ > Start uncovering the many advantages of virtual appliances > and start using them to simplify application deployment and > accelerate your shift to cloud computing. > http://p.sf.net/sfu/novell-sfdev2dev > _______________________________________________ > Cppcms-users mailing list > Cpp...@li... > https://lists.sourceforge.net/lists/listinfo/cppcms-users > |
From: Kevin A. <kev...@ne...> - 2010-09-16 20:08:57
|
Here are the results from your SVN head. Note I disabled the ICU backend. make test Running tests... Test project $HOME/boost_locale_rework_build Start 1: test_codepage 1/10 Test #1: test_codepage .................... Passed 0.01 sec Start 2: test_message 2/10 Test #2: test_message ..................... Passed 0.02 sec Start 3: test_ios_prop 3/10 Test #3: test_ios_prop .................... Passed 0.00 sec Start 4: test_codepage_converter 4/10 Test #4: test_codepage_converter .......... Passed 0.00 sec Start 5: test_std_convert 5/10 Test #5: test_std_convert ................. Passed 0.00 sec Start 6: test_std_formatting 6/10 Test #6: test_std_formatting .............. Passed 0.00 sec Start 7: test_std_collate 7/10 Test #7: test_std_collate ................. Passed 0.00 sec Start 8: test_posix_collate 8/10 Test #8: test_posix_collate ............... Passed 0.00 sec Start 9: test_posix_convert 9/10 Test #9: test_posix_convert ...............***Failed 0.01 sec Start 10: test_posix_formatting 10/10 Test #10: test_posix_formatting ............ Passed 0.01 sec 90% tests passed, 1 tests failed out of 10 Total Test time (real) = 0.08 sec The following tests FAILED: 9 - test_posix_convert (Failed) Errors while running CTest make: *** [test] Error 8 Here is the output of the failed test: $ ./test_posix_convert Testing char - Testing at least C - Testing en_US.UTF-8 Testing en_US.ISO8859-1 Error in line:25 boost::locale::to_upper(to_correct_string<CharType>(src,l),l) == to_correct_string<CharType>(tgtu,l) Testing tr_TR.UTF-8 Turkish locale is not supported well Testing wchar_t - Testing at least C - Testing en_US.UTF-8 Testing en_US.ISO8859-1 Testing tr_TR.UTF-8 Turkish locale is not supported well Passed 25 tests Failed 1 tests 96.2% of tests completed sucsessefully On 09/16/2010 03:54 PM, Artyom wrote: > Thank you very much! > > I've got reports of faults on Mac OS X however I hadn't > this platform to debug. My brother usually helps > me with Mac platform, but now he is busy. > > Thank you for this good point. > > I commit the changes to both CppCMS and Boost.Locale > svn > (https://cppcms.svn.sourceforge.net/svnroot/cppcms/boost_locale/branches/rework) > > Would you be so kind to check if tests now pass and what fails? > > Thank you, > Artyom > > > > > > ----- Original Message ---- >> From: Kevin Arunski<kev...@ne...> >> To: cpp...@li... >> Sent: Thu, September 16, 2010 9:25:13 PM >> Subject: [Cppcms-users] Boost Locale: Undefined behavior in POSIX backend >> >> There is an issue in the POSIX backend that causes a crash on Mac OS X, >> and undefined behavior elsewhere. >> >> In file libs/locale/src/posix/codecvt.cpp: >> >> The declaration of iconv_t d at line 41 shadows the declaration of d at >> line 38. This causes undefined behavior at line 85 in the call to >> iconv_close. On Mac OS X this causes a crash, though I would expect >> there to be at least a memory leak on every platform. >> >> >> ------------------------------------------------------------------------------ >> Start uncovering the many advantages of virtual appliances >> and start using them to simplify application deployment and >> accelerate your shift to cloud computing. >> http://p.sf.net/sfu/novell-sfdev2dev >> _______________________________________________ >> Cppcms-users mailing list >> Cpp...@li... >> https://lists.sourceforge.net/lists/listinfo/cppcms-users >> > > > > > ------------------------------------------------------------------------------ > Start uncovering the many advantages of virtual appliances > and start using them to simplify application deployment and > accelerate your shift to cloud computing. > http://p.sf.net/sfu/novell-sfdev2dev > _______________________________________________ > Cppcms-users mailing list > Cpp...@li... > https://lists.sourceforge.net/lists/listinfo/cppcms-users |
From: Artyom <art...@ya...> - 2010-09-16 19:55:03
|
Thank you very much! I've got reports of faults on Mac OS X however I hadn't this platform to debug. My brother usually helps me with Mac platform, but now he is busy. Thank you for this good point. I commit the changes to both CppCMS and Boost.Locale svn (https://cppcms.svn.sourceforge.net/svnroot/cppcms/boost_locale/branches/rework) Would you be so kind to check if tests now pass and what fails? Thank you, Artyom ----- Original Message ---- > From: Kevin Arunski <kev...@ne...> > To: cpp...@li... > Sent: Thu, September 16, 2010 9:25:13 PM > Subject: [Cppcms-users] Boost Locale: Undefined behavior in POSIX backend > > There is an issue in the POSIX backend that causes a crash on Mac OS X, > and undefined behavior elsewhere. > > In file libs/locale/src/posix/codecvt.cpp: > > The declaration of iconv_t d at line 41 shadows the declaration of d at > line 38. This causes undefined behavior at line 85 in the call to > iconv_close. On Mac OS X this causes a crash, though I would expect > there to be at least a memory leak on every platform. > > > ------------------------------------------------------------------------------ > Start uncovering the many advantages of virtual appliances > and start using them to simplify application deployment and > accelerate your shift to cloud computing. > http://p.sf.net/sfu/novell-sfdev2dev > _______________________________________________ > Cppcms-users mailing list > Cpp...@li... > https://lists.sourceforge.net/lists/listinfo/cppcms-users > |
From: Kevin A. <kev...@ne...> - 2010-09-16 19:37:38
|
There is an issue in the POSIX backend that causes a crash on Mac OS X, and undefined behavior elsewhere. In file libs/locale/src/posix/codecvt.cpp: The declaration of iconv_t d at line 41 shadows the declaration of d at line 38. This causes undefined behavior at line 85 in the call to iconv_close. On Mac OS X this causes a crash, though I would expect there to be at least a memory leak on every platform. |
From: Artyom <art...@ya...> - 2010-09-15 13:39:58
|
Hello All, This release is security fix release for stable branch of CppCMS and both security and feature release for CppCMS 1.x.x branch. All users are encouraged to update to latest version. If it is not possible to upgrade don't use "hmac" session backend, switch to "aes" or server side session storage backend. Changedlog 0.0.7 ---------------- - Bugfix of hmac backend: generation of signature with too small block size Changedlog 0.99.3 ----------------- Security: - Bugfix of hmac backend: generation of signature with too small block size Features: - New version of Boost.Locale - Added support of multiple hmac cookie signatures: Built in: hmac-md5, hmac-sha1 With libgcrypt: hmac-sha224, hmac-sha256, hmac-sha384, hmac-sha512 By default hmac now uses sha1 instead of less secure md5 Bugs: - Fixed memory leak in aes session encryptor - Fixed incorrect testing of UTF-8 encoding - Fixed missing attributes of some form widgets - Fixed incorrect code generation in templates in certain cases, - Fixed race condition when dispatch and context assignment may happen not simulataniously Artyom |
From: Artyom <art...@ya...> - 2010-09-13 10:01:31
|
> BTW, there are some better tests for checking file type: mime() type and >add_valid_magic() where the last is the best >one. > > > >Thank you for the enlightenment! According to > > >http://www.garykessler.net/library/file_sigs.html > > >, the jpeg magic number is "FF D8 FF E0 xx xx 4A 46 49 46 00" and the png one is > >"89 50 4E 47 0D 0A 1A 0A". > > > >Member function > > >void cppcms::widgets::file::add_valid_magic(std::string const &) > > >expects std::string as the argument. If I accept both jpeg and png files, what >std::string should I pass to add_valid_magic? You should call add_valid_magic twice and for one provide a valid magic: For jpeg, is is enough to give "\xFF\xD8\xFF" (see more detailed description in the link you had given) and for PNG "\x89\x50\x4E\x47\x0D\x0A\x1A\x0A" > > >This raises another question: It is server's responsibility rather than browsers > >to perform the validation triggered by add_valid_magic, isn't it? Of course it is the server side check, quite simple - test of file begins with this string - that's it. > If it is, will > cppcms automatically do the validation? Yes, when you call your_form.validate() (as you usually do for forms) you'll get the validation result. Each widget has its own set of parameters to validate. > If it is programmer's job, a snippet of > validation example code will be much appreciated. > See forms example (you had probably seen it) and refer to each widget reference to see validation options: http://cppcms.sourceforge.net/cppcms_ref_v0_99/namespacecppcms_1_1widgets.html Artyom |
From: <cn...@gr...> - 2010-09-13 09:48:17
|
Hi! Artyom, > BTW, there are some better tests for checking file type: mime() type and add_valid_magic() where the last is the best one. Thank you for the enlightenment! According to http://www.garykessler.net/library/file_sigs.html , the jpeg magic number is "FF D8 FF E0 xx xx 4A 46 49 46 00" and the png one is "89 50 4E 47 0D 0A 1A 0A". Member function void cppcms::widgets::file::add_valid_magic(std::string const &) expects std::string as the argument. If I accept both jpeg and png files, what std::string should I pass to add_valid_magic? This raises another question: It is server's responsibility rather than browsers to perform the validation triggered by add_valid_magic, isn't it? If it is, will cppcms automatically do the validation? If it is programmer's job, a snippet of validation example code will be much appreciated. Thank you in advance! Regards, CN |
From: Artyom <art...@ya...> - 2010-09-12 16:55:14
|
> >1. The user fills out the login form and sends account and password to server >through https protocol. >2. The server validates the incoming account and password. If the account and >password are valid, the server sets that session ID as the cookie value to that >client using this assignment (and cppcms will do the rest for me?): CppCMS handles the session cookies for you, all you need is to set some values in session, For example: cppcms::application::session()["logged_in_user_name"] = valid_user_name User can't alter the content of the sessions so its OK. Small note: If user is banned or for example unregistered its session still may be valid and he can do some operations, so the better way to also to check that for example if this user name exits. See as example see http://cppcms.svn.sourceforge.net/viewvc/cppcms/wikipp/branches/for_cppcms_v100/users.cpp?revision=1200&view=markup If you don't care about such stuff, just mark it and that's it. > >I assume that the session ID's generated by cppcms do not overlap for fairly >long time. I most likely will configure cppcms server to >session.expire="browser". Also, I feel setting session ID as the only cookie >data in browsers is pretty efficient because its size is very small. Actually there are several options for session storage, the most efficient is actually to use encrypted cookies and not session ids. >2. I don't see a member function that returns the current session ID in class >"session_interface". Where can I have it instead? Because it is not always session id, sometimes all session data remains on client side. (Of course it is signed or encrypted so user can't alter it too much) Artyom |
From: Artyom <art...@ya...> - 2010-09-12 16:48:08
|
Thanks for the report, Fixed in svn. BTW, there are some better tests for checking file type: mime() type and add_valid_magic() where the last is the best one. Artyom > >From: "cn...@gr..." <cn...@gr...> >To: cpp...@li... >Sent: Sun, September 12, 2010 4:53:50 PM >Subject: [Cppcms-users] undefined reference to >`cppcms::widgets::file::filename(booster::regex const&)' > >Hi! > >I add file widget in form: > >cppcms::widgets::file picture; > >And enforce check on file name extension: > >picture.filename(booster::regex::regex(".*\\.(jpg|jpeg|png)")); > >The compiler/linker complains: >------------------ >g++ -Wall app.cpp view.cpp -o app -lcppcms -lbooster >/tmp/ccFMAK7N.o: In function `content::info_form::info_form()': >hello.cpp:(.text._ZN7content11info_formC1Ev[content::info_form::info_form()]+0x140): > undefined reference to `cppcms::widgets::file::filename(booster::regex const&)' >collect2: ld returned 1 exit status >make: *** [app] Error 1 >------------------ > >cmake output for cppcms follows: >------------------ >-- The C compiler identification is GNU >-- The CXX compiler identification is GNU >-- Check for working C compiler: /usr/bin/gcc >-- Check for working C compiler: /usr/bin/gcc -- works >-- Detecting C compiler ABI info >-- Detecting C compiler ABI info - done >-- Check for working CXX compiler: /usr/bin/c++ >-- Check for working CXX compiler: /usr/bin/c++ -- works >-- Detecting CXX compiler ABI info >-- Detecting CXX compiler ABI info - done >-- Performing Test GCC_IS_GCC4 >-- Performing Test GCC_IS_GCC4 - Success >-- Looking for socket >-- Looking for socket - found >-- Looking for gethostbyname >-- Looking for gethostbyname - found >-- Performing Test BOOSTER_HAS_GCC_SYNC >-- Performing Test BOOSTER_HAS_GCC_SYNC - Success >-- Performing Test BOOSTER_HAVE_GCC_BITS_EXCHANGE_AND_ADD >-- Performing Test BOOSTER_HAVE_GCC_BITS_EXCHANGE_AND_ADD - Failed >-- Performing Test BOOSTER_HAVE_GCC_EXT_EXCHANGE_AND_ADD >-- Performing Test BOOSTER_HAVE_GCC_EXT_EXCHANGE_AND_ADD - Success >-- Performing Test BOOSTER_HAVE_FREEBSD_ATOMIC >-- Performing Test BOOSTER_HAVE_FREEBSD_ATOMIC - Failed >-- Performing Test BOOSTER_HAVE_SOLARIS_ATOMIC >-- Performing Test BOOSTER_HAVE_SOLARIS_ATOMIC - Failed >-- Performing Test BOOSTER_HAVE_MAC_OS_X_ATOMIC >-- Performing Test BOOSTER_HAVE_MAC_OS_X_ATOMIC - Failed >-- Performing Test BOOSTER_HAVE_STDINT_H >-- Performing Test BOOSTER_HAVE_STDINT_H - Success >-- Performing Test BOOSTER_HAVE_INTTYPES_H >-- Performing Test BOOSTER_HAVE_INTTYPES_H - Success >-- Performing Test BOOSTER_AIO_HAVE_PF_INET6 >-- Performing Test BOOSTER_AIO_HAVE_PF_INET6 - Success >-- Performing Test CPPCMS_HAVE_STDINT_H >-- Performing Test CPPCMS_HAVE_STDINT_H - Success >-- Performing Test CPPCMS_HAVE_INTTYPES_H >-- Performing Test CPPCMS_HAVE_INTTYPES_H - Success >-- Looking for atoll >-- Looking for atoll - found >-- Looking for _atoi64 >-- Looking for _atoi64 - not found >-- Looking for snprintf >-- Looking for snprintf - found >-- Looking for stat >-- Looking for stat - found >-- Looking for _stat >-- Looking for _stat - not found >-- Performing Test LIBC_ICONV >-- Performing Test LIBC_ICONV - Success >-- Performing Test CPPCMS_HAVE_STD_WSTRING >-- Performing Test CPPCMS_HAVE_STD_WSTRING - Success >-- Performing Test CPPCMS_HAVE_BSD_TM >-- Performing Test CPPCMS_HAVE_BSD_TM - Success >-- Performing Test CPPCMS_HAVE_CPP0X_UXSTRING >-- Performing Test CPPCMS_HAVE_CPP0X_UXSTRING - Failed >-- Performing Test CPPCMS_HAVE_CPP_0X_AUTO >-- Performing Test CPPCMS_HAVE_CPP_0X_AUTO - Failed >-- Performing Test CPPCMS_HAVE_CPP_0X_DECLTYPE >-- Performing Test CPPCMS_HAVE_CPP_0X_DECLTYPE - Failed >-- Performing Test CPPCMS_HAVE_GCC_TYPEOF >-- Performing Test CPPCMS_HAVE_GCC_TYPEOF - Success >-- Performing Test CPPCMS_HAVE_UNDERSCORE_TYPEOF >-- Performing Test CPPCMS_HAVE_UNDERSCORE_TYPEOF - Success >-- Looking for dlopen >-- Looking for dlopen - not found >-- Looking for dlopen in dl >-- Looking for dlopen in dl - found >-- Looking for socket >-- Looking for socket - found >-- Looking for gethostbyname >-- Looking for gethostbyname - found >-- Looking for canonicalize_file_name >-- Looking for canonicalize_file_name - found >-- Configuring done >-- Generating done >-- Build files have been written to: /usr/src/cppcms-0.99.2.1/build >------------------ > > > > > >Any clue will be much grateful! > >Thank you in advance! > >CN > |
From: <cn...@gr...> - 2010-09-12 14:54:23
|
Hi! I add file widget in form: cppcms::widgets::file picture; And enforce check on file name extension: picture.filename(booster::regex::regex(".*\\.(jpg|jpeg|png)")); The compiler/linker complains: ------------------ g++ -Wall app.cpp view.cpp -o app -lcppcms -lbooster /tmp/ccFMAK7N.o: In function `content::info_form::info_form()': hello.cpp:(.text._ZN7content11info_formC1Ev[content::info_form::info_form()]+0x140): undefined reference to `cppcms::widgets::file::filename(booster::regex const&)' collect2: ld returned 1 exit status make: *** [app] Error 1 ------------------ cmake output for cppcms follows: ------------------ -- The C compiler identification is GNU -- The CXX compiler identification is GNU -- Check for working C compiler: /usr/bin/gcc -- Check for working C compiler: /usr/bin/gcc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Performing Test GCC_IS_GCC4 -- Performing Test GCC_IS_GCC4 - Success -- Looking for socket -- Looking for socket - found -- Looking for gethostbyname -- Looking for gethostbyname - found -- Performing Test BOOSTER_HAS_GCC_SYNC -- Performing Test BOOSTER_HAS_GCC_SYNC - Success -- Performing Test BOOSTER_HAVE_GCC_BITS_EXCHANGE_AND_ADD -- Performing Test BOOSTER_HAVE_GCC_BITS_EXCHANGE_AND_ADD - Failed -- Performing Test BOOSTER_HAVE_GCC_EXT_EXCHANGE_AND_ADD -- Performing Test BOOSTER_HAVE_GCC_EXT_EXCHANGE_AND_ADD - Success -- Performing Test BOOSTER_HAVE_FREEBSD_ATOMIC -- Performing Test BOOSTER_HAVE_FREEBSD_ATOMIC - Failed -- Performing Test BOOSTER_HAVE_SOLARIS_ATOMIC -- Performing Test BOOSTER_HAVE_SOLARIS_ATOMIC - Failed -- Performing Test BOOSTER_HAVE_MAC_OS_X_ATOMIC -- Performing Test BOOSTER_HAVE_MAC_OS_X_ATOMIC - Failed -- Performing Test BOOSTER_HAVE_STDINT_H -- Performing Test BOOSTER_HAVE_STDINT_H - Success -- Performing Test BOOSTER_HAVE_INTTYPES_H -- Performing Test BOOSTER_HAVE_INTTYPES_H - Success -- Performing Test BOOSTER_AIO_HAVE_PF_INET6 -- Performing Test BOOSTER_AIO_HAVE_PF_INET6 - Success -- Performing Test CPPCMS_HAVE_STDINT_H -- Performing Test CPPCMS_HAVE_STDINT_H - Success -- Performing Test CPPCMS_HAVE_INTTYPES_H -- Performing Test CPPCMS_HAVE_INTTYPES_H - Success -- Looking for atoll -- Looking for atoll - found -- Looking for _atoi64 -- Looking for _atoi64 - not found -- Looking for snprintf -- Looking for snprintf - found -- Looking for stat -- Looking for stat - found -- Looking for _stat -- Looking for _stat - not found -- Performing Test LIBC_ICONV -- Performing Test LIBC_ICONV - Success -- Performing Test CPPCMS_HAVE_STD_WSTRING -- Performing Test CPPCMS_HAVE_STD_WSTRING - Success -- Performing Test CPPCMS_HAVE_BSD_TM -- Performing Test CPPCMS_HAVE_BSD_TM - Success -- Performing Test CPPCMS_HAVE_CPP0X_UXSTRING -- Performing Test CPPCMS_HAVE_CPP0X_UXSTRING - Failed -- Performing Test CPPCMS_HAVE_CPP_0X_AUTO -- Performing Test CPPCMS_HAVE_CPP_0X_AUTO - Failed -- Performing Test CPPCMS_HAVE_CPP_0X_DECLTYPE -- Performing Test CPPCMS_HAVE_CPP_0X_DECLTYPE - Failed -- Performing Test CPPCMS_HAVE_GCC_TYPEOF -- Performing Test CPPCMS_HAVE_GCC_TYPEOF - Success -- Performing Test CPPCMS_HAVE_UNDERSCORE_TYPEOF -- Performing Test CPPCMS_HAVE_UNDERSCORE_TYPEOF - Success -- Looking for dlopen -- Looking for dlopen - not found -- Looking for dlopen in dl -- Looking for dlopen in dl - found -- Looking for socket -- Looking for socket - found -- Looking for gethostbyname -- Looking for gethostbyname - found -- Looking for canonicalize_file_name -- Looking for canonicalize_file_name - found -- Configuring done -- Generating done -- Build files have been written to: /usr/src/cppcms-0.99.2.1/build ------------------ Any clue will be much grateful! Thank you in advance! CN |
From: <cn...@gr...> - 2010-09-12 11:36:11
|
Hello! Gurus, I want some services to be only available to logged in users. My design goes like this way: 1. The user fills out the login form and sends account and password to server through https protocol. 2. The server validates the incoming account and password. If the account and password are valid, the server sets that session ID as the cookie value to that client using this assignment (and cppcms will do the rest for me?): cppcms::application::session()["logged_in_sid"]=<the_current_session_id>; 3. When requested for the special services, server will first check if the client already logged in before offering them: if(session().is_set("logged_in_sid")){ //Offer the special services here. } I assume that the session ID's generated by cppcms do not overlap for fairly long time. I most likely will configure cppcms server to session.expire="browser". Also, I feel setting session ID as the only cookie data in browsers is pretty efficient because its size is very small. Here are the questions I need your enlightenment: 1. Is such design correct, efficient, and not too vulnerable? Do I miss any thing? 2. I don't see a member function that returns the current session ID in class "session_interface". Where can I have it instead? Best Regards, CN |
From: Artyom <art...@ya...> - 2010-09-11 20:04:45
|
Hello All, Boost.Locale v3 integrated to CppCMS SVN version. Some instability may occur in several days period. New in this version of localization support: -------------------------------------------- - ICU is optional however recommended, - new localization backends added: See: <http://art-blog.no-ip.info/wikipp/en/page/cppcms_1x_config#localization.backend> <http://cppcms.sourceforge.net/boost_locale/html/tutorial.html#34173cb38f07f89ddbebc2ac9128303f> Generally when performance is much more important then full featured localization support, choose std/posix/winapi backend, otherwise ICU is preferred. - Compiling with or without ICU now does not break binary compatibility of the library Breaking changes: ------------------ Option localization.encoding is removed, it is mandatory to provide encoding in locale names in configuration. Before: "encoding" : "UTF-8", "locales" : [ "en_US", "he_IL" ] Now: "locales" : [ "en_US.UTF-8", "he_IL.UTF-8" ] Note: You actually need to specify the default locale, each time, new locale is requested it would be cached. Artyom |
From: Artyom <art...@ya...> - 2010-09-11 04:28:34
|
> hi, > > i just develop a longpoll server using cppcms, nginx and fastcgi. i > relaxed the nginx timeout (fastcgi_read_timeout) to 600 seconds which > helped against the closing of the connection after 60 seconds, but now > the connection shuts down 180 seconds after establishing it. nginx > states in the log: > > client closed prematurely connection, so upstream connection is closed > too while sending request to upstream > > so this seems like cppcm closed the connection this time. is there any > timeout imposed on cppcms side? > CppCMS does not apply any timeout, it leaves it as long as server holds the connection. So most likely the client closes it. Now if you do want to apply timeouts you need to use booster::aio::deadline_timer and close connection manually when timer expires. Artyom |
From: Frank E. <fra...@an...> - 2010-09-10 20:06:11
|
hi, i just develop a longpoll server using cppcms, nginx and fastcgi. i relaxed the nginx timeout (fastcgi_read_timeout) to 600 seconds which helped against the closing of the connection after 60 seconds, but now the connection shuts down 180 seconds after establishing it. nginx states in the log: client closed prematurely connection, so upstream connection is closed too while sending request to upstream so this seems like cppcm closed the connection this time. is there any timeout imposed on cppcms side? thanks, frank -- Dipl.-Ing. (FH) Frank Enderle anamica UG (haftungsbeschränkt) Beinsteinerstr. 6 71334 Waiblingen Telefon: +49 151 14981091 Telefax: +49 7151 1335770 E-Mail: fra...@an... Internet: www.anamica.de Handelsregister: AG Stuttgart HRB 732357 Geschäftsführer: Yvonne Holzwarth, Frank Enderle |