{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":4484495,"defaultBranch":"master","name":"gdnsd","ownerLogin":"gdnsd","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2012-05-29T16:22:51.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/9117831?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1704397654.0","currentOid":""},"activityList":{"items":[{"before":"0ca25d4e801a6306a6c3c792c2f22e0b97467034","after":"e6b9b2147e29e4f3deae330cea475d597bc54ee6","ref":"refs/heads/3.99-alpha","pushedAt":"2024-03-27T16:44:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"Get unused tools out of qa/ as well","shortMessageHtmlLink":"Get unused tools out of qa/ as well"}},{"before":"0ab11d4b890bba1be04d6bbaccce9bdf9fd84067","after":"07eb6fc5232017d46ef44188adcd8aa81d7a26e7","ref":"refs/heads/master","pushedAt":"2024-03-27T16:43:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"Get unused tools out of qa/ as well","shortMessageHtmlLink":"Get unused tools out of qa/ as well"}},{"before":"4db182f13ee1339530bb0fff3472cbb954de7442","after":"0ca25d4e801a6306a6c3c792c2f22e0b97467034","ref":"refs/heads/3.99-alpha","pushedAt":"2024-03-27T15:45:57.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"Fix CodeQL badge URIs from prev commit","shortMessageHtmlLink":"Fix CodeQL badge URIs from prev commit"}},{"before":"e7e7ecd721eec3d5ab90fdbdfc68fea0aaea3966","after":"0ab11d4b890bba1be04d6bbaccce9bdf9fd84067","ref":"refs/heads/master","pushedAt":"2024-03-27T15:39:01.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"Fix CodeQL badge URIs from prev commit","shortMessageHtmlLink":"Fix CodeQL badge URIs from prev commit"}},{"before":"9663047d360acf0d2317140a22a5165034eda09e","after":"e7e7ecd721eec3d5ab90fdbdfc68fea0aaea3966","ref":"refs/heads/master","pushedAt":"2024-03-27T15:36:53.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"Meta-updates for CI stuff\n\n* Updated the checkout actions to v4 for the Nodejs 20 transition\n* Updated CodeQL from v2 to v3 actions similarly\n* Rename the CodeQL file (it apparently warns if you don't choose\n the correct filename here)\n* Removed the sonarcloud workflow stuff\n* Removed sonarcloud and coverity badges\n\nIn both removal cases, it's mainly that I've not consistently made\nthe time to keep these workflows running smoothly and up to date.\nSeems better to remove them than to have stale/misleading badges\nand workflows about them. They are good tools, they just require\nmore time investment than I'm willing to make lately.","shortMessageHtmlLink":"Meta-updates for CI stuff"}},{"before":"6239d39e587ba2d73ce6af7a096c1617609973a4","after":"4db182f13ee1339530bb0fff3472cbb954de7442","ref":"refs/heads/3.99-alpha","pushedAt":"2024-03-12T13:20:13.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"sun_set_path: use overall size of sockaddr_un\n\nApparently this is more-portable, simpler, and doesn't break\nthings, or so I hear, anyways.\n\n(cherry picked from commit 9663047d360acf0d2317140a22a5165034eda09e)","shortMessageHtmlLink":"sun_set_path: use overall size of sockaddr_un"}},{"before":"f0c4bfa17674435e37d8b8f0d768f482f7b531a6","after":"9663047d360acf0d2317140a22a5165034eda09e","ref":"refs/heads/master","pushedAt":"2024-03-12T13:18:05.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"sun_set_path: use overall size of sockaddr_un\n\nApparently this is more-portable, simpler, and doesn't break\nthings, or so I hear, anyways.","shortMessageHtmlLink":"sun_set_path: use overall size of sockaddr_un"}},{"before":"da876fd1887ee4fc51a65d2746e98280e61f0837","after":"6239d39e587ba2d73ce6af7a096c1617609973a4","ref":"refs/heads/3.99-alpha","pushedAt":"2024-02-06T16:14:31.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"qsort pedantry\n\nPeople will be looking for such cases after seeing\nhttps://www.qualys.com/2024/01/30/qsort.txt , so I may as well\nrefactor this case to be more idiomatic.\n\nNote there was no actual issue here, as (a) the natural x->mask\nvalues are validated by nets_parse() to be in the range 0-128 and\n(b) the normalizer can also set a magic value for deletions, but\nthis was also just under half the bits of an unsigned (0xFFFF).\n\nI've changed the magic value to 0xFF to make things cleaner (now\nall values fit in 8 bits, instead of having the one outlier as a\n16-bit value), and refactored the qsort callback to both assert\nthe expected mask value range and use the more-idiomatic\ninteger comparison method of: (a > b) - (a < b).\n\n(cherry picked from commit f0c4bfa17674435e37d8b8f0d768f482f7b531a6)","shortMessageHtmlLink":"qsort pedantry"}},{"before":"c68767d5da7b008d152edf16de95254837df580b","after":"f0c4bfa17674435e37d8b8f0d768f482f7b531a6","ref":"refs/heads/master","pushedAt":"2024-02-06T15:01:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"qsort pedantry\n\nPeople will be looking for such cases after seeing\nhttps://www.qualys.com/2024/01/30/qsort.txt , so I may as well\nrefactor this case to be more idiomatic.\n\nNote there was no actual issue here, as (a) the natural x->mask\nvalues are validated by nets_parse() to be in the range 0-128 and\n(b) the normalizer can also set a magic value for deletions, but\nthis was also just under half the bits of an unsigned (0xFFFF).\n\nI've changed the magic value to 0xFF to make things cleaner (now\nall values fit in 8 bits, instead of having the one outlier as a\n16-bit value), and refactored the qsort callback to both assert\nthe expected mask value range and use the more-idiomatic\ninteger comparison method of: (a > b) - (a < b).","shortMessageHtmlLink":"qsort pedantry"}},{"before":"4b6ea863c2417010c79a4c1f55a2f72b1718434a","after":"da876fd1887ee4fc51a65d2746e98280e61f0837","ref":"refs/heads/3.99-alpha","pushedAt":"2024-01-05T14:17:24.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"nxdc: inline the tbf sub-struct","shortMessageHtmlLink":"nxdc: inline the tbf sub-struct"}},{"before":"7f5823d0ff6f87ad37dbc7527b213874575bc24e","after":"c68767d5da7b008d152edf16de95254837df580b","ref":"refs/heads/master","pushedAt":"2024-01-05T14:16:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"style fixups\n\nSome tabs slipped through in recent commit df8baf8d","shortMessageHtmlLink":"style fixups"}},{"before":"22c5e64fc0677fa864bf9632d4cd842b18f2ec52","after":"4b6ea863c2417010c79a4c1f55a2f72b1718434a","ref":"refs/heads/3.99-alpha","pushedAt":"2024-01-04T19:59:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"Import NEWS updates from 3.8.2\n\nAll this stuff was cherry-picked over as applicable, sometimes\nwith slight amendments.","shortMessageHtmlLink":"Import NEWS updates from 3.8.2"}},{"before":"df8baf8d5e1e846753147cbffbc7d6fb67bcd54e","after":"7f5823d0ff6f87ad37dbc7527b213874575bc24e","ref":"refs/heads/master","pushedAt":"2024-01-04T19:47:23.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"NEWS update and version bump for v3.8.2","shortMessageHtmlLink":"NEWS update and version bump for v3.8.2"}},{"before":"1ea904f22cad024b9aab4b02c9d1bbff4a75b2e0","after":"22c5e64fc0677fa864bf9632d4cd842b18f2ec52","ref":"refs/heads/3.99-alpha","pushedAt":"2024-01-04T19:18:55.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"plugins: Replace svc lookup assert with log_fatal\n\nThese are cases where our code logic dictates that the\nservice_types lookup loop should always find an answer, but the\nassert() here still seems fishy in this case, vs doing an outright\nlog_fatal with a BUG message.\n\n(cherry picked from commit df8baf8d5e1e846753147cbffbc7d6fb67bcd54e)","shortMessageHtmlLink":"plugins: Replace svc lookup assert with log_fatal"}},{"before":"17ed347dd1dabc1520464f03117d89dcac7c227f","after":"df8baf8d5e1e846753147cbffbc7d6fb67bcd54e","ref":"refs/heads/master","pushedAt":"2024-01-04T19:18:42.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"plugins: Replace svc lookup assert with log_fatal\n\nThese are cases where our code logic dictates that the\nservice_types lookup loop should always find an answer, but the\nassert() here still seems fishy in this case, vs doing an outright\nlog_fatal with a BUG message.","shortMessageHtmlLink":"plugins: Replace svc lookup assert with log_fatal"}},{"before":"f544d566c96134c0945461e57a77c287f75d3a2d","after":"17ed347dd1dabc1520464f03117d89dcac7c227f","ref":"refs/heads/master","pushedAt":"2024-01-04T15:03:57.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"dnsio_tcp: minor refactoring on listen()\n\nThis is just to satisfy the gcc-13 analyzer, which otherwise\nindicates an FD leak here. I'm guessing it can't correctly parse\nlisten() on a sockfd accessed from a pointer to a struct?\n\nNo functional change whatsoever.","shortMessageHtmlLink":"dnsio_tcp: minor refactoring on listen()"}},{"before":"56f889e0ba35d02cf81f82ffd58c89840b585c27","after":"1ea904f22cad024b9aab4b02c9d1bbff4a75b2e0","ref":"refs/heads/3.99-alpha","pushedAt":"2024-01-04T00:48:53.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"conf.c style fix\n\nForgotten during cppcheck cleanup earlier\n\n(cherry picked from commit f544d566c96134c0945461e57a77c287f75d3a2d)","shortMessageHtmlLink":"conf.c style fix"}},{"before":"75ab1f71247d7dd14ebbe4d3f674f2eef6b5abf8","after":"f544d566c96134c0945461e57a77c287f75d3a2d","ref":"refs/heads/master","pushedAt":"2024-01-04T00:42:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"conf.c style fix\n\nForgotten during cppcheck cleanup earlier","shortMessageHtmlLink":"conf.c style fix"}},{"before":"93fd4204f707289aaeb5281f589eebc0ad12573e","after":"75ab1f71247d7dd14ebbe4d3f674f2eef6b5abf8","ref":"refs/heads/master","pushedAt":"2024-01-03T23:56:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"Fix process management issues\n\nThis is a revert of a small part of commit e6760666 \"Robustness\nimprovements for replacement launching\", which was included in the\nv3.8.1 release.\n\nThe bulk of that commit seems fine, but the process management\nchanges (removal of waitpid() src/css.c, ignoring SIGCHLD in the\nmain process, removing the libev child reaper) were misguided, and\ncaused two issues:\n\n1. \"gdnsd daemonize\" didn't work right at all. We don't commonly\n use this on Linux/systemd systems anymore and the testsuite\n doesn't exercise it either, so this went unnoticed until a\n FreeBSD user reported it!\n\n2. It caused a (probably very unlikely in practice!) race\n condition during \"replace\" under systemd, which could result in\n the new replacement daemon being considered an \"alien\" main pid\n by systemd because it hadn't been re-parented to init before it\n notified systemd of readiness and mainpid change. On\n relatively recent versions of systemd, this doesn't seem to\n cause any functional issue (merely a spurious error message),\n but on older systemd installations it can prevent correct\n operation, IIRC.\n\nThis commit restores these matters to their previous state:\nSIGCHLD is no longer ignored, the libev child repear is used, and\nwe explicitly waitpid() for the middle child process during\n\"replace\" to avoid the above-mentioned alien main pid race.\n\nFixes #238\nSee also #243","shortMessageHtmlLink":"Fix process management issues"}},{"before":"d26ee1f024516c45f2b32a62479efa5003ce1f44","after":"93fd4204f707289aaeb5281f589eebc0ad12573e","ref":"refs/heads/master","pushedAt":"2024-01-03T23:34:40.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"cppcheck updates\n\nMy laptop now has cppcheck-2.13, so this updates the qa script to\nwork with it. Also applied several trivial fixups noted by the\nnew cppcheck. Mostly these are trivial constifications, trivial\nparam name sync between declaration and definition, etc. A few\nsuppressions moved around as well.","shortMessageHtmlLink":"cppcheck updates"}},{"before":"877e15cf55593fa618d2009027e928d5f52da775","after":"d26ee1f024516c45f2b32a62479efa5003ce1f44","ref":"refs/heads/master","pushedAt":"2024-01-03T16:55:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"tests: fix AXFR-related Net::DNS 1.39 breakage\n\nNet::DNS 1.39 made axfr() ignore the \"persistent_tcp\" setting, which\nmeans that the socket is closed right after the AXFR, which in turn\nincreases tcp_close_c.\n\nThis was previously not the case, and hence the 003complex/009broken.t\ntests right after the AXFR (7 onwards) fail with:\n # Stats check: Stats check failed: tcp_close_c mismatch (hard-fail), wanted 0, got 1\n\nAdd tcp_close_c to the AXFR test's stats_inc, which resolves this issue\nfor 1.39+.\n\nTo ensure backwards-compatibility with older versions, also add some\ncode to turn off persistent_tcp() before the axfr() call, and restore it\nto its previous state right after (currently always 1).\n\nFixes #236","shortMessageHtmlLink":"tests: fix AXFR-related Net::DNS 1.39 breakage"}},{"before":"e25e9bbe75d869caab4a4df2452a1e64bbdcc761","after":"56f889e0ba35d02cf81f82ffd58c89840b585c27","ref":"refs/heads/3.99-alpha","pushedAt":"2023-06-13T16:10:19.587Z","pushType":"push","commitsCount":1,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"3.99.0-alpha2 release commit","shortMessageHtmlLink":"3.99.0-alpha2 release commit"}},{"before":"1e3c1d88b8487e25b19d1c8c4682ec2e3e0f302a","after":"e25e9bbe75d869caab4a4df2452a1e64bbdcc761","ref":"refs/heads/3.99-alpha","pushedAt":"2023-06-13T16:06:45.935Z","pushType":"push","commitsCount":1,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"extfile: one more bugfix for unused service_type\n\nThe qsort() block shouldn't be executed if there's no monitors to\niterate here.\n\n(cherry picked from commit 877e15cf55593fa618d2009027e928d5f52da775)","shortMessageHtmlLink":"extfile: one more bugfix for unused service_type"}},{"before":"c09fa879d2ecce3f00955285a3f4cc527f6cab35","after":"877e15cf55593fa618d2009027e928d5f52da775","ref":"refs/heads/master","pushedAt":"2023-06-13T16:05:59.014Z","pushType":"push","commitsCount":1,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"extfile: one more bugfix for unused service_type\n\nThe qsort() block shouldn't be executed if there's no monitors to\niterate here.","shortMessageHtmlLink":"extfile: one more bugfix for unused service_type"}},{"before":null,"after":"1e3c1d88b8487e25b19d1c8c4682ec2e3e0f302a","ref":"refs/heads/3.99-alpha","pushedAt":"2023-06-13T14:10:41.740Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"3.99.0-alpha1 release commit","shortMessageHtmlLink":"3.99.0-alpha1 release commit"}},{"before":"6404015172573a4abc21f4ba34f166e763fa923d","after":"c09fa879d2ecce3f00955285a3f4cc527f6cab35","ref":"refs/heads/master","pushedAt":"2023-06-13T13:48:19.623Z","pushType":"push","commitsCount":3,"pusher":{"login":"blblack","name":"Brandon L Black","path":"/blblack","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1015349?s=80&v=4"},"commit":{"message":"extfile: fix memleak on invalid file contents\n\nNoticed while working on the previous extfile commit: if an input\nfile was of the wrong form (is parseable, but top level is not a\nhash), the raw vscf data structure from the parser was never\nfreed.","shortMessageHtmlLink":"extfile: fix memleak on invalid file contents"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEIPCwMwA","startCursor":null,"endCursor":null}},"title":"Activity ยท gdnsd/gdnsd"}