{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":47496286,"defaultBranch":"master","name":"mqtt_cpp","ownerLogin":"redboltz","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2015-12-06T12:43:23.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/275959?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1711371974.0","currentOid":""},"activityList":{"items":[{"before":"6031d5c77fb3c72b100b41099606156af63f6e64","after":null,"ref":"refs/heads/ci_test","pushedAt":"2024-03-25T13:06:14.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"}},{"before":"71e6799176f3282b49f07d78e6618dc68fbc2ec0","after":null,"ref":"refs/heads/fix_connection_error_called","pushedAt":"2024-03-25T13:06:02.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"}},{"before":"ac2d324c59c628513959079805f785136e26c7ca","after":"62a16b2fa78f4032cf638652f43ef31462185647","ref":"refs/heads/master","pushedAt":"2024-03-25T13:05:57.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Merge pull request #993 from redboltz/fix_connection_error_called\n\nWrapped connection_error_called by socket's strand.","shortMessageHtmlLink":"Merge pull request #993 from redboltz/fix_connection_error_called"}},{"before":"baae61a4cab147dd69ae3bce9e7b4dca2a00ab23","after":"71e6799176f3282b49f07d78e6618dc68fbc2ec0","ref":"refs/heads/fix_connection_error_called","pushedAt":"2024-03-25T12:24:07.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Adjusted windows CI.","shortMessageHtmlLink":"Adjusted windows CI."}},{"before":"5dba092078f0759c6cc36c93d50dc6a49de8a02d","after":"6031d5c77fb3c72b100b41099606156af63f6e64","ref":"refs/heads/ci_test","pushedAt":"2024-03-25T12:11:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Set version to 3.1.1.","shortMessageHtmlLink":"Set version to 3.1.1."}},{"before":"777f9afb71c5238a59f49988cf1611de644ec23c","after":"5dba092078f0759c6cc36c93d50dc6a49de8a02d","ref":"refs/heads/ci_test","pushedAt":"2024-03-25T11:39:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Added verbose.","shortMessageHtmlLink":"Added verbose."}},{"before":"45449e30a3eb48a5fbf596c407ded728673eec91","after":"777f9afb71c5238a59f49988cf1611de644ec23c","ref":"refs/heads/ci_test","pushedAt":"2024-03-25T11:37:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Add crypto.","shortMessageHtmlLink":"Add crypto."}},{"before":null,"after":"45449e30a3eb48a5fbf596c407ded728673eec91","ref":"refs/heads/ci_test","pushedAt":"2024-03-25T10:22:14.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Just kick CI for test.","shortMessageHtmlLink":"Just kick CI for test."}},{"before":"e9fc1b20bca1e5423356a3cda3a0662061c38952","after":"baae61a4cab147dd69ae3bce9e7b4dca2a00ab23","ref":"refs/heads/fix_connection_error_called","pushedAt":"2024-03-25T08:24:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Updated boost.","shortMessageHtmlLink":"Updated boost."}},{"before":null,"after":"e9fc1b20bca1e5423356a3cda3a0662061c38952","ref":"refs/heads/fix_connection_error_called","pushedAt":"2024-03-25T07:28:53.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Wrapped connection_error_called by socket's strand.","shortMessageHtmlLink":"Wrapped connection_error_called by socket's strand."}},{"before":"dc90578d66333deb2eaba8d054ac505c19f496fa","after":null,"ref":"refs/heads/fix_989","pushedAt":"2023-11-14T01:22:45.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"}},{"before":"070c25a65591e3d52d08da41e3cab7036843f96d","after":"ac2d324c59c628513959079805f785136e26c7ca","ref":"refs/heads/master","pushedAt":"2023-11-14T01:22:39.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Merge pull request #990 from redboltz/fix_989\n\nFixed #989.","shortMessageHtmlLink":"Merge pull request #990 from redboltz/fix_989"}},{"before":"87e3baae1a4afcbda4f3ea466c234778ae19324f","after":"dc90578d66333deb2eaba8d054ac505c19f496fa","ref":"refs/heads/fix_989","pushedAt":"2023-11-14T00:21:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Fixed missing include path.","shortMessageHtmlLink":"Fixed missing include path."}},{"before":"bc91f3a61c6581a6e73edf8e687440b6c7f607f8","after":"87e3baae1a4afcbda4f3ea466c234778ae19324f","ref":"refs/heads/fix_989","pushedAt":"2023-11-14T00:05:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Fixed missing include path.","shortMessageHtmlLink":"Fixed missing include path."}},{"before":null,"after":"bc91f3a61c6581a6e73edf8e687440b6c7f607f8","ref":"refs/heads/fix_989","pushedAt":"2023-11-13T13:15:52.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Fixed #989.\n\nRemoved boost system and date_time from dependency.","shortMessageHtmlLink":"Fixed #989."}},{"before":"07a62470e8ccf1c8604fa585ec44e8636eb7e9e8","after":null,"ref":"refs/heads/fix_invalid_packet_handling","pushedAt":"2023-10-20T08:03:48.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"}},{"before":"5e90794b8ff5734002e2cd3d5a7a4c4b55fb0e4b","after":"070c25a65591e3d52d08da41e3cab7036843f96d","ref":"refs/heads/master","pushedAt":"2023-10-20T08:03:46.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Merge pull request #988 from redboltz/fix_invalid_packet_handling\n\nFixed store_ management.","shortMessageHtmlLink":"Merge pull request #988 from redboltz/fix_invalid_packet_handling"}},{"before":"936a121456388814566a17da1b7727fdb6b18e4c","after":"07a62470e8ccf1c8604fa585ec44e8636eb7e9e8","ref":"refs/heads/fix_invalid_packet_handling","pushedAt":"2023-10-20T07:15:22.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Fixed store_ management.\n\nImproved protocol error checking.","shortMessageHtmlLink":"Fixed store_ management."}},{"before":"605c5a2639406b6c80de972c2acff0dd20738636","after":"936a121456388814566a17da1b7727fdb6b18e4c","ref":"refs/heads/fix_invalid_packet_handling","pushedAt":"2023-10-20T06:43:45.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Fixed store_ management.\n\nImproved protocol error checking.","shortMessageHtmlLink":"Fixed store_ management."}},{"before":"9fb2ff16560908317af2a8eda1eebde1288928ff","after":"605c5a2639406b6c80de972c2acff0dd20738636","ref":"refs/heads/fix_invalid_packet_handling","pushedAt":"2023-10-20T06:29:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Removed unused variable.","shortMessageHtmlLink":"Removed unused variable."}},{"before":"bbe92cc8bec0974c875ff42ab1451791d0f757aa","after":"9fb2ff16560908317af2a8eda1eebde1288928ff","ref":"refs/heads/fix_invalid_packet_handling","pushedAt":"2023-10-20T06:23:13.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Fixed store_ management.\n\nImproved protocol error checking.","shortMessageHtmlLink":"Fixed store_ management."}},{"before":null,"after":"bbe92cc8bec0974c875ff42ab1451791d0f757aa","ref":"refs/heads/fix_invalid_packet_handling","pushedAt":"2023-10-20T05:33:28.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Fixed store_ management.\n\nImproved protocol error checking.","shortMessageHtmlLink":"Fixed store_ management."}},{"before":"d09d49b546cdb17f32cf27c7ae5f24803d9473b0","after":null,"ref":"refs/heads/fix_v5_pubrec_error_send_more","pushedAt":"2023-10-04T05:43:46.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"}},{"before":"ec7bc5462d5bc70644472a72d4dd075a6d79d947","after":"5e90794b8ff5734002e2cd3d5a7a4c4b55fb0e4b","ref":"refs/heads/master","pushedAt":"2023-10-04T05:43:43.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Merge pull request #987 from redboltz/fix_v5_pubrec_error_send_more\n\nFixed qos2_publish_handled_ insertion timing.","shortMessageHtmlLink":"Merge pull request #987 from redboltz/fix_v5_pubrec_error_send_more"}},{"before":null,"after":"d09d49b546cdb17f32cf27c7ae5f24803d9473b0","ref":"refs/heads/fix_v5_pubrec_error_send_more","pushedAt":"2023-10-04T04:42:00.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Fixed qos2_publish_handled_ insertion timing.\n\nIt should be do before publish handler is called.","shortMessageHtmlLink":"Fixed qos2_publish_handled_ insertion timing."}},{"before":"8e9c8f93bae3a1614360fa8f8ba2f2fdd97c7f9e","after":"ec7bc5462d5bc70644472a72d4dd075a6d79d947","ref":"refs/heads/master","pushedAt":"2023-10-03T10:07:20.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Merge pull request #986 from redboltz/fix_v5_pubrec_error_send\n\nFixed qos2_publish_handled_ invalidly remains issue.","shortMessageHtmlLink":"Merge pull request #986 from redboltz/fix_v5_pubrec_error_send"}},{"before":null,"after":"0310600c833f99c4cdc92c6cfc5e79dcedea64fc","ref":"refs/heads/fix_v5_pubrec_error_send","pushedAt":"2023-10-03T09:09:59.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Fixed qos2_publish_handled_ invalidly remains issue.\n\nqos2_publish_handled_ is used for avoid qos2 publish handling twice or\nmore. On publish receive, if it doesn't contain the packet_id, then handle the\npublish message and add the packet_id to qos2_publish_handled_.\nOn pubrel receive, erase the packet_id from qos2_publish_handled_\nbecause the publish packet that has the packet_id is no logner resend.\nIt is the basic logic.\nHowever, when user sends pubrec with error reason_code, then the communication\npartner doesn't send back pubrel due to the error.\nIn this case, there is no chance to erase qos2_publish_handled_ entry.\n\nIt should be erased when user sends pubrec with error reason_code.\nThis fix adds it.\n\nqos2_publish_handled_ used to access from only on strand. But this\naddition introduce out of strand access. It is user's timing. So I\nintroduced mutex for qos2_publish_handled_.","shortMessageHtmlLink":"Fixed qos2_publish_handled_ invalidly remains issue."}},{"before":"e38fc28516fd632496b516f365640c07d3ad3af3","after":null,"ref":"refs/heads/fix_client_cert_3","pushedAt":"2023-07-07T04:50:58.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"}},{"before":"35a14f70a042797a225b7ce20e0e4459d194525f","after":"8e9c8f93bae3a1614360fa8f8ba2f2fdd97c7f9e","ref":"refs/heads/master","pushedAt":"2023-07-07T04:50:55.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Merge pull request #983 from redboltz/fix_client_cert_3\n\nFixed client certificate treatment.","shortMessageHtmlLink":"Merge pull request #983 from redboltz/fix_client_cert_3"}},{"before":null,"after":"e38fc28516fd632496b516f365640c07d3ad3af3","ref":"refs/heads/fix_client_cert_3","pushedAt":"2023-07-07T04:06:50.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"redboltz","name":"Takatoshi Kondo","path":"/redboltz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/275959?s=80&v=4"},"commit":{"message":"Fixed client certificate treatment.\n\nThe first problem is the callback function that is set by\nset_verify_callback() is not called the first accept. But the second\naccept and later one is called.\nI analyzed the problem.\nserver.hpp calls ctx_.set_verify_callback() int do_accept().\nctx_ is moved from user at the constructor.\nThen it is passed to socket_t parameter (actual type is ssl::stream).\nThe type of parameter is `ssl::context&` but it behaves as copy in the\nconstructor. So ctx_ configuration must be finished before socket_t is\ncreated.\nI updated the order.\nThen the first problem is solved.\n\nHowever, the second problem is appared.\nThe username that is set by the callback is wrong. This is caused by\nctx_.set_verify_callback() overwriting.\nThe second do_accept() is called when the first TCP\nasync_accept (lowest_layer) is finished. It is too early. Because in the\ndo_accept(), ctx_.set_verify_callback() is called with the new username\nmemory. Then the callback is called. The expected behavior is the\ncallback is the first one, but the second one is called.\nTo solve this problem, I moved the next do_accept() call to after the\nall handshake sequences are finished. It would cause degrade connecting\nperformance but so far, there is no way.\n\nIdeally, create the new ctx for each accept, but it requires a big\nbreaking change. So I don't do that.\n\nNOTE: async_mqtt solves the problem using this way\nhttps://github.com/redboltz/async_mqtt/blob/04748f1311f3dff6c2d418f1ac9d39b64f4da0a0/tool/broker.cpp#L322","shortMessageHtmlLink":"Fixed client certificate treatment."}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEHpQdeQA","startCursor":null,"endCursor":null}},"title":"Activity ยท redboltz/mqtt_cpp"}