xfrin_notify_handling.feature 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529
  1. Feature: Xfrin incoming notify handling
  2. Tests for Xfrin incoming notify handling. They also test
  3. statistics counters incremented, which are related to notifying
  4. and transferring by Xfrout and receiveing by Xfrin. Some cases are
  5. considered: Transferring is done via IPv4 or IPv6 transport. A
  6. transfer request from Xfrin is rejected by Xfrout. The master
  7. server or slave server is unreachable.
  8. Scenario: Handle incoming notify
  9. Given I have bind10 running with configuration xfrin/retransfer_master.conf with cmdctl port 47804 as master
  10. And wait for master stderr message BIND10_STARTED_CC
  11. And wait for master stderr message CMDCTL_STARTED
  12. And wait for master stderr message AUTH_SERVER_STARTED
  13. And wait for master stderr message XFROUT_STARTED
  14. And wait for master stderr message ZONEMGR_STARTED
  15. And wait for master stderr message STATS_STARTING
  16. And I have bind10 running with configuration xfrin/retransfer_slave_notify.conf
  17. And wait for bind10 stderr message BIND10_STARTED_CC
  18. And wait for bind10 stderr message CMDCTL_STARTED
  19. And wait for bind10 stderr message AUTH_SERVER_STARTED
  20. And wait for bind10 stderr message XFRIN_STARTED
  21. And wait for bind10 stderr message ZONEMGR_STARTED
  22. A query for www.example.org to [::1]:47806 should have rcode NXDOMAIN
  23. #
  24. # Test1 for Xfrout statistics
  25. #
  26. check initial statistics for Xfrout with cmdctl port 47804
  27. #
  28. # Test2 for Xfrin statistics
  29. #
  30. check initial statistics for Xfrin
  31. When I send bind10 with cmdctl port 47804 the command Xfrout notify example.org IN
  32. Then wait for new master stderr message XFROUT_NOTIFY_COMMAND
  33. Then wait for new bind10 stderr message AUTH_RECEIVED_NOTIFY
  34. Then wait for new bind10 stderr message ZONEMGR_RECEIVE_NOTIFY
  35. Then wait for new bind10 stderr message XFRIN_XFR_TRANSFER_STARTED
  36. Then wait for new bind10 stderr message XFRIN_TRANSFER_SUCCESS not XFRIN_XFR_PROCESS_FAILURE
  37. Then wait for new bind10 stderr message ZONEMGR_RECEIVE_XFRIN_SUCCESS
  38. Then wait 5 times for new master stderr message NOTIFY_OUT_SENDING_NOTIFY
  39. Then wait for new master stderr message NOTIFY_OUT_RETRY_EXCEEDED
  40. A query for www.example.org to [::1]:47806 should have rcode NOERROR
  41. #
  42. # Test3 for Xfrout statistics
  43. #
  44. # check statistics change
  45. #
  46. # wait until the last stats requesting is finished
  47. When I query statistics zones of bind10 module Xfrout with cmdctl port 47804
  48. wait for new master stderr message XFROUT_RECEIVED_GETSTATS_COMMAND
  49. last bindctl output should not contain "error"
  50. When I query statistics zones of bind10 module Xfrout with cmdctl port 47804
  51. The statistics counters are 0 in category .Xfrout.zones except for the following items
  52. | item_name | item_value |
  53. | _SERVER_.notifyoutv6 | 5 |
  54. | _SERVER_.xfrreqdone | 1 |
  55. | example.org..notifyoutv6 | 5 |
  56. | example.org..xfrreqdone | 1 |
  57. When I query statistics socket of bind10 module Xfrout with cmdctl port 47804
  58. The statistics counters are 0 in category .Xfrout.socket.unixdomain except for the following items
  59. | item_name | item_value |
  60. | open | 1 |
  61. | accept | 1 |
  62. #
  63. # Test4 for Xfrin statistics
  64. #
  65. # check statistics change
  66. #
  67. # wait until the last stats requesting is finished
  68. When I query statistics zones of bind10 module Xfrin with cmdctl
  69. wait for new bind10 stderr message XFRIN_RECEIVED_COMMAND
  70. last bindctl output should not contain "error"
  71. When I query statistics zones of bind10 module Xfrin with cmdctl
  72. The statistics counters are 0 in category .Xfrin.zones except for the following items
  73. | item_name | item_value | min_value |
  74. | _SERVER_.soaoutv6 | 1 | |
  75. | _SERVER_.axfrreqv6 | 1 | |
  76. | _SERVER_.xfrsuccess | 1 | |
  77. | _SERVER_.last_axfr_duration | | 0.0 |
  78. | example.org..soaoutv6 | 1 | |
  79. | example.org..axfrreqv6 | 1 | |
  80. | example.org..xfrsuccess | 1 | |
  81. | example.org..last_axfr_duration | | 0.0 |
  82. #
  83. # Test for handling incoming notify only in IPv4
  84. #
  85. Scenario: Handle incoming notify (IPv4)
  86. Given I have bind10 running with configuration xfrin/retransfer_master_v4.conf with cmdctl port 47804 as master
  87. And wait for master stderr message BIND10_STARTED_CC
  88. And wait for master stderr message CMDCTL_STARTED
  89. And wait for master stderr message AUTH_SERVER_STARTED
  90. And wait for master stderr message XFROUT_STARTED
  91. And wait for master stderr message ZONEMGR_STARTED
  92. And wait for master stderr message STATS_STARTING
  93. And I have bind10 running with configuration xfrin/retransfer_slave_notify_v4.conf
  94. And wait for bind10 stderr message BIND10_STARTED_CC
  95. And wait for bind10 stderr message CMDCTL_STARTED
  96. And wait for bind10 stderr message AUTH_SERVER_STARTED
  97. And wait for bind10 stderr message XFRIN_STARTED
  98. And wait for bind10 stderr message ZONEMGR_STARTED
  99. A query for www.example.org to 127.0.0.1:47806 should have rcode NXDOMAIN
  100. #
  101. # Test1 for Xfrout statistics
  102. #
  103. check initial statistics for Xfrout with cmdctl port 47804
  104. #
  105. # Test2 for Xfrin statistics
  106. #
  107. check initial statistics for Xfrin
  108. When I send bind10 with cmdctl port 47804 the command Xfrout notify example.org IN
  109. Then wait for new master stderr message XFROUT_NOTIFY_COMMAND
  110. Then wait for new bind10 stderr message AUTH_RECEIVED_NOTIFY
  111. # From this point we can't reliably 'wait for new' because the ordering
  112. # of logs from different processes is unpredictable. But these
  113. # should be okay in this case.
  114. Then wait for bind10 stderr message ZONEMGR_RECEIVE_NOTIFY
  115. Then wait for bind10 stderr message XFRIN_XFR_TRANSFER_STARTED
  116. Then wait for bind10 stderr message XFRIN_TRANSFER_SUCCESS not XFRIN_XFR_PROCESS_FAILURE
  117. Then wait for bind10 stderr message ZONEMGR_RECEIVE_XFRIN_SUCCESS
  118. Then wait for master stderr message NOTIFY_OUT_REPLY_RECEIVED
  119. A query for www.example.org to 127.0.0.1:47806 should have rcode NOERROR
  120. # Make sure handling statistics command handling checked below is
  121. # after this query
  122. And wait for bind10 stderr message AUTH_SEND_NORMAL_RESPONSE
  123. #
  124. # Test3 for Xfrout statistics
  125. #
  126. # check statistics change
  127. #
  128. # wait until the last stats requesting is finished
  129. When I query statistics zones of bind10 module Xfrout with cmdctl port 47804
  130. # note that this does not 100% guarantee the stats updated Xfrout
  131. # statistics. But there doesn't seem to be a better log message that
  132. # suggests this event.
  133. wait for new master stderr message XFROUT_RECEIVED_GETSTATS_COMMAND
  134. last bindctl output should not contain "error"
  135. When I query statistics zones of bind10 module Xfrout with cmdctl port 47804
  136. The statistics counters are 0 in category .Xfrout.zones except for the following items
  137. | item_name | item_value |
  138. | _SERVER_.notifyoutv4 | 5 |
  139. | _SERVER_.xfrreqdone | 1 |
  140. | example.org..notifyoutv4 | 5 |
  141. | example.org..xfrreqdone | 1 |
  142. When I query statistics socket of bind10 module Xfrout with cmdctl port 47804
  143. The statistics counters are 0 in category .Xfrout.socket.unixdomain except for the following items
  144. | item_name | item_value |
  145. | open | 1 |
  146. | accept | 1 |
  147. #
  148. # Test4 for Xfrin statistics
  149. #
  150. # check statistics change
  151. #
  152. # wait until the last stats requesting is finished
  153. When I query statistics zones of bind10 module Xfrin with cmdctl
  154. wait for new bind10 stderr message XFRIN_RECEIVED_COMMAND
  155. last bindctl output should not contain "error"
  156. When I query statistics zones of bind10 module Xfrin with cmdctl
  157. The statistics counters are 0 in category .Xfrin.zones except for the following items
  158. | item_name | item_value | min_value |
  159. | _SERVER_.soaoutv4 | 1 | |
  160. | _SERVER_.axfrreqv4 | 1 | |
  161. | _SERVER_.xfrsuccess | 1 | |
  162. | _SERVER_.last_axfr_duration | | 0.0 |
  163. | example.org..soaoutv4 | 1 | |
  164. | example.org..axfrreqv4 | 1 | |
  165. | example.org..xfrsuccess | 1 | |
  166. | example.org..last_axfr_duration | | 0.0 |
  167. #
  168. # Test for Xfr request rejected
  169. #
  170. Scenario: Handle incoming notify (XFR request rejected)
  171. Given I have bind10 running with configuration xfrin/retransfer_master.conf with cmdctl port 47804 as master
  172. And wait for master stderr message BIND10_STARTED_CC
  173. And wait for master stderr message CMDCTL_STARTED
  174. And wait for master stderr message AUTH_SERVER_STARTED
  175. And wait for master stderr message XFROUT_STARTED
  176. And wait for master stderr message ZONEMGR_STARTED
  177. And wait for master stderr message STATS_STARTING
  178. And I have bind10 running with configuration xfrin/retransfer_slave_notify.conf
  179. And wait for bind10 stderr message BIND10_STARTED_CC
  180. And wait for bind10 stderr message CMDCTL_STARTED
  181. And wait for bind10 stderr message AUTH_SERVER_STARTED
  182. And wait for bind10 stderr message XFRIN_STARTED
  183. And wait for bind10 stderr message ZONEMGR_STARTED
  184. A query for www.example.org to [::1]:47806 should have rcode NXDOMAIN
  185. #
  186. # Test1 for Xfrout statistics
  187. #
  188. check initial statistics for Xfrout with cmdctl port 47804
  189. #
  190. # Test2 for Xfrin statistics
  191. #
  192. check initial statistics for Xfrin
  193. #
  194. # set transfer_acl rejection
  195. # Local xfr requests from Xfrin module would be rejected here.
  196. #
  197. When I send bind10 the following commands with cmdctl port 47804
  198. """
  199. config set Xfrout/zone_config[0]/transfer_acl [{"action": "REJECT", "from": "::1"}]
  200. config commit
  201. """
  202. last bindctl output should not contain Error
  203. When I send bind10 with cmdctl port 47804 the command Xfrout notify example.org IN
  204. Then wait for new master stderr message XFROUT_NOTIFY_COMMAND
  205. Then wait for new bind10 stderr message AUTH_RECEIVED_NOTIFY
  206. Then wait for new bind10 stderr message ZONEMGR_RECEIVE_NOTIFY
  207. Then wait for new bind10 stderr message XFRIN_XFR_TRANSFER_STARTED
  208. Then wait for new bind10 stderr message XFRIN_XFR_TRANSFER_PROTOCOL_VIOLATION not XFRIN_XFR_TRANSFER_STARTED
  209. Then wait for new bind10 stderr message ZONEMGR_RECEIVE_XFRIN_FAILED not ZONEMGR_RECEIVE_XFRIN_SUCCESS
  210. Then wait 5 times for new master stderr message NOTIFY_OUT_SENDING_NOTIFY
  211. Then wait for new master stderr message NOTIFY_OUT_RETRY_EXCEEDED
  212. A query for www.example.org to [::1]:47806 should have rcode NXDOMAIN
  213. #
  214. # Test3 for Xfrout statistics
  215. #
  216. # check statistics change
  217. #
  218. # wait until the last stats requesting is finished
  219. When I query statistics zones of bind10 module Xfrout with cmdctl port 47804
  220. wait for new master stderr message XFROUT_RECEIVED_GETSTATS_COMMAND
  221. last bindctl output should not contain "error"
  222. When I query statistics zones of bind10 module Xfrout with cmdctl port 47804
  223. The statistics counters are 0 in category .Xfrout.zones except for the following items
  224. | item_name | item_value | min_value | max_value |
  225. | _SERVER_.notifyoutv6 | 5 | | |
  226. | _SERVER_.xfrrej | | 1 | 3 |
  227. | example.org..notifyoutv6 | 5 | | |
  228. | example.org..xfrrej | | 1 | 3 |
  229. # Note: The above rejection counters might sometimes be increased
  230. # up to 3. See this for details
  231. # http://git.bind10.isc.org/~tester/builder/BIND10-lettuce/20120918210000-MacOS/logs/lettuce.out
  232. When I query statistics socket of bind10 module Xfrout with cmdctl port 47804
  233. The statistics counters are 0 in category .Xfrout.socket.unixdomain except for the following items
  234. | item_name | item_value |
  235. | open | 1 |
  236. | accept | 1 |
  237. #
  238. # Test4 for Xfrin statistics
  239. #
  240. # check statistics change
  241. #
  242. # wait until the last stats requesting is finished
  243. When I query statistics zones of bind10 module Xfrin with cmdctl
  244. wait for new bind10 stderr message XFRIN_RECEIVED_COMMAND
  245. last bindctl output should not contain "error"
  246. When I query statistics zones of bind10 module Xfrin with cmdctl
  247. The statistics counters are 0 in category .Xfrin.zones except for the following items
  248. | item_name | min_value | max_value |
  249. | _SERVER_.soaoutv6 | 1 | 3 |
  250. | _SERVER_.axfrreqv6 | 1 | 3 |
  251. | _SERVER_.xfrfail | 1 | 3 |
  252. | example.org..soaoutv6 | 1 | 3 |
  253. | example.org..axfrreqv6 | 1 | 3 |
  254. | example.org..xfrfail | 1 | 3 |
  255. # Note: The above requests and failures would be done several
  256. # times depending on timing or environment. We expect here that
  257. # they would be 1 to 3.
  258. #
  259. # Test for Xfr request rejected in IPv4
  260. #
  261. Scenario: Handle incoming notify (XFR request rejected in IPv4)
  262. Given I have bind10 running with configuration xfrin/retransfer_master_v4.conf with cmdctl port 47804 as master
  263. And wait for master stderr message BIND10_STARTED_CC
  264. And wait for master stderr message CMDCTL_STARTED
  265. And wait for master stderr message AUTH_SERVER_STARTED
  266. And wait for master stderr message XFROUT_STARTED
  267. And wait for master stderr message ZONEMGR_STARTED
  268. And wait for master stderr message STATS_STARTING
  269. And I have bind10 running with configuration xfrin/retransfer_slave_notify_v4.conf
  270. And wait for bind10 stderr message BIND10_STARTED_CC
  271. And wait for bind10 stderr message CMDCTL_STARTED
  272. And wait for bind10 stderr message AUTH_SERVER_STARTED
  273. And wait for bind10 stderr message XFRIN_STARTED
  274. And wait for bind10 stderr message ZONEMGR_STARTED
  275. A query for www.example.org to 127.0.0.1:47806 should have rcode NXDOMAIN
  276. #
  277. # Test1 for Xfrout statistics
  278. #
  279. check initial statistics for Xfrout with cmdctl port 47804
  280. #
  281. # Test2 for Xfrin statistics
  282. #
  283. check initial statistics for Xfrin
  284. #
  285. # set transfer_acl rejection
  286. # Local xfr requests from Xfrin module would be rejected here.
  287. #
  288. When I send bind10 the following commands with cmdctl port 47804
  289. """
  290. config set Xfrout/zone_config[0]/transfer_acl [{"action": "REJECT", "from": "127.0.0.1"}]
  291. config commit
  292. """
  293. last bindctl output should not contain Error
  294. When I send bind10 with cmdctl port 47804 the command Xfrout notify example.org IN
  295. Then wait for new master stderr message XFROUT_NOTIFY_COMMAND
  296. Then wait for new bind10 stderr message AUTH_RECEIVED_NOTIFY
  297. # can't use 'wait for new' below.
  298. Then wait for bind10 stderr message ZONEMGR_RECEIVE_NOTIFY
  299. Then wait for bind10 stderr message XFRIN_XFR_TRANSFER_STARTED
  300. Then wait for bind10 stderr message XFRIN_XFR_TRANSFER_PROTOCOL_VIOLATION not XFRIN_TRANSFER_SUCCESS
  301. Then wait for bind10 stderr message ZONEMGR_RECEIVE_XFRIN_FAILED not ZONEMGR_RECEIVE_XFRIN_SUCCESS
  302. Then wait for master stderr message NOTIFY_OUT_REPLY_RECEIVED
  303. A query for www.example.org to 127.0.0.1:47806 should have rcode NXDOMAIN
  304. #
  305. # Test3 for Xfrout statistics
  306. #
  307. # check statistics change
  308. #
  309. When I query statistics zones of bind10 module Xfrout with cmdctl port 47804
  310. # wait until stats request at least after NOTIFY_OUT_REPLY_RECEIVED
  311. wait for new master stderr message XFROUT_RECEIVED_GETSTATS_COMMAND
  312. last bindctl output should not contain "error"
  313. When I query statistics zones of bind10 module Xfrout with cmdctl port 47804
  314. The statistics counters are 0 in category .Xfrout.zones except for the following items
  315. | item_name | item_value | min_value | max_value |
  316. | _SERVER_.notifyoutv4 | 5 | | |
  317. | _SERVER_.xfrrej | | 1 | 3 |
  318. | example.org..notifyoutv4 | 5 | | |
  319. | example.org..xfrrej | | 1 | 3 |
  320. # Note: The above rejection counters might sometimes be increased
  321. # up to 3. See this for details
  322. # http://git.bind10.isc.org/~tester/builder/BIND10-lettuce/20120918210000-MacOS/logs/lettuce.out
  323. When I query statistics socket of bind10 module Xfrout with cmdctl port 47804
  324. The statistics counters are 0 in category .Xfrout.socket.unixdomain except for the following items
  325. | item_name | item_value |
  326. | open | 1 |
  327. | accept | 1 |
  328. #
  329. # Test4 for Xfrin statistics
  330. #
  331. # check statistics change
  332. #
  333. # wait until the last stats requesting is finished
  334. When I query statistics zones of bind10 module Xfrin with cmdctl
  335. wait for new bind10 stderr message XFRIN_RECEIVED_COMMAND
  336. last bindctl output should not contain "error"
  337. When I query statistics zones of bind10 module Xfrin with cmdctl
  338. The statistics counters are 0 in category .Xfrin.zones except for the following items
  339. | item_name | min_value | max_value |
  340. | _SERVER_.soaoutv4 | 1 | 3 |
  341. | _SERVER_.axfrreqv4 | 1 | 3 |
  342. | _SERVER_.xfrfail | 1 | 3 |
  343. | example.org..soaoutv4 | 1 | 3 |
  344. | example.org..axfrreqv4 | 1 | 3 |
  345. | example.org..xfrfail | 1 | 3 |
  346. # Note: The above requests and failures would be done several
  347. # times depending on timing or environment. We expect here that
  348. # they would be 1 to 3.
  349. #
  350. # Test for unreachable slave
  351. #
  352. Scenario: Handle incoming notify (unreachable slave)
  353. Given I have bind10 running with configuration xfrin/retransfer_master.conf with cmdctl port 47804 as master
  354. And wait for master stderr message BIND10_STARTED_CC
  355. And wait for master stderr message CMDCTL_STARTED
  356. And wait for master stderr message AUTH_SERVER_STARTED
  357. And wait for master stderr message XFROUT_STARTED
  358. And wait for master stderr message ZONEMGR_STARTED
  359. And wait for master stderr message STATS_STARTING
  360. When I send bind10 with cmdctl port 47804 the command Xfrout notify example.org IN
  361. Then wait for new master stderr message XFROUT_NOTIFY_COMMAND
  362. Then wait for new master stderr message NOTIFY_OUT_SENDING_NOTIFY
  363. Then wait for new master stderr message NOTIFY_OUT_TIMEOUT
  364. #
  365. # Test1 for Xfrout statistics
  366. #
  367. # check statistics change
  368. #
  369. When I query statistics zones of bind10 module Xfrout with cmdctl port 47804
  370. # wait until stats request at least after NOTIFY_OUT_TIMEOUT
  371. wait for new master stderr message XFROUT_RECEIVED_GETSTATS_COMMAND
  372. last bindctl output should not contain "error"
  373. When I query statistics zones of bind10 module Xfrout with cmdctl port 47804
  374. The statistics counters are 0 in category .Xfrout.zones except for the following items
  375. | item_name | min_value | max_value |
  376. | _SERVER_.notifyoutv6 | 1 | 5 |
  377. | example.org..notifyoutv6 | 1 | 5 |
  378. When I query statistics socket of bind10 module Xfrout with cmdctl port 47804
  379. The statistics counters are 0 in category .Xfrout.socket.unixdomain except for the following items
  380. | item_name | item_value |
  381. | open | 1 |
  382. #
  383. # Test for NOTIFY that would result in NOTAUTH
  384. #
  385. Scenario: Handle incoming notify that does match authoritative zones
  386. Given I have bind10 running with configuration xfrin/retransfer_master.conf with cmdctl port 47804 as master
  387. And wait for master stderr message BIND10_STARTED_CC
  388. And wait for master stderr message CMDCTL_STARTED
  389. And wait for master stderr message AUTH_SERVER_STARTED
  390. And wait for master stderr message XFROUT_STARTED
  391. And wait for master stderr message ZONEMGR_STARTED
  392. And wait for master stderr message STATS_STARTING
  393. And I have bind10 running with configuration xfrin/retransfer_slave_notify.conf
  394. And wait for bind10 stderr message BIND10_STARTED_CC
  395. And wait for bind10 stderr message CMDCTL_STARTED
  396. And wait for bind10 stderr message AUTH_SERVER_STARTED
  397. And wait for bind10 stderr message XFRIN_STARTED
  398. And wait for bind10 stderr message ZONEMGR_STARTED
  399. #
  400. # replace master's data source with unmatched zone for slave's zone.
  401. # we restart Xfrout to make it sure.
  402. #
  403. When I send bind10 the following commands with cmdctl port 47804
  404. """
  405. config set data_sources/classes/IN[0]/params/database_file data/ixfr-out/zones.sqlite3
  406. config set Auth/database_file data/ixfr-out/zones.sqlite3
  407. config set Xfrout/zone_config[0]/origin example.com
  408. config commit
  409. Xfrout shutdown
  410. """
  411. last bindctl output should not contain "error"
  412. And wait for new master stderr message XFROUT_STARTED
  413. A query for www.example.com to [::1]:47806 should have rcode REFUSED
  414. When I send bind10 with cmdctl port 47804 the command Xfrout notify example.com IN
  415. Then wait for new master stderr message XFROUT_NOTIFY_COMMAND
  416. Then wait for new bind10 stderr message AUTH_RECEIVED_NOTIFY_NOTAUTH
  417. Then wait for new master stderr message NOTIFY_OUT_REPLY_RECEIVED
  418. A query for www.example.com to [::1]:47806 should have rcode REFUSED
  419. #
  420. # Test for NOTIFY that's not in the secondaries list
  421. #
  422. Scenario: Handle incoming notify that is not in the secondaries list
  423. Given I have bind10 running with configuration xfrin/retransfer_master.conf with cmdctl port 47804 as master
  424. And wait for master stderr message BIND10_STARTED_CC
  425. And wait for master stderr message CMDCTL_STARTED
  426. And wait for master stderr message AUTH_SERVER_STARTED
  427. And wait for master stderr message XFROUT_STARTED
  428. And wait for master stderr message ZONEMGR_STARTED
  429. And wait for master stderr message STATS_STARTING
  430. And I have bind10 running with configuration xfrin/retransfer_slave_notify.conf
  431. And wait for bind10 stderr message BIND10_STARTED_CC
  432. And wait for bind10 stderr message CMDCTL_STARTED
  433. And wait for bind10 stderr message AUTH_SERVER_STARTED
  434. And wait for bind10 stderr message XFRIN_STARTED
  435. And wait for bind10 stderr message ZONEMGR_STARTED
  436. #
  437. # Empty slave's secondaries list, and restart zonemgr to make it sure
  438. #
  439. When I send bind10 the following commands with cmdctl
  440. """
  441. config remove Zonemgr/secondary_zones[0]
  442. config commit
  443. Zonemgr shutdown
  444. """
  445. last bindctl output should not contain "error"
  446. And wait for new bind10 stderr message ZONEMGR_STARTED
  447. A query for www.example.org to [::1]:47806 should have rcode NXDOMAIN
  448. When I send bind10 with cmdctl port 47804 the command Xfrout notify example.org IN
  449. Then wait for new master stderr message XFROUT_NOTIFY_COMMAND
  450. Then wait for new bind10 stderr message AUTH_RECEIVED_NOTIFY
  451. Then wait for new bind10 stderr message ZONEMGR_RECEIVE_NOTIFY
  452. Then wait for new bind10 stderr message ZONEMGR_ZONE_NOTIFY_NOT_SECONDARY
  453. Then wait for new master stderr message NOTIFY_OUT_REPLY_RECEIVED
  454. A query for www.example.org to [::1]:47806 should have rcode NXDOMAIN