2.9.7-alt4
[nbd.git] / nbd-2.9.7-prerun.patch
blobb46521088475359e3d81a11a6be03ee37247af44
1 diff -urN nbd-2.9.7.orig/nbd-server.c nbd-2.9.7/nbd-server.c
2 --- nbd-2.9.7.orig/nbd-server.c 2007-09-18 15:29:55 +0300
3 +++ nbd-2.9.7/nbd-server.c 2007-10-14 01:16:03 +0300
4 @@ -1276,18 +1276,17 @@
5 * @param client a connected client
6 **/
7 void serveconnection(CLIENT *client) {
8 - setupexport(client);
10 - if (client->server->flags & F_COPYONWRITE) {
11 - copyonwrite_prepare(client);
12 - }
14 - setmysockopt(client->net);
16 if(!do_run(client->server->prerun, client->exportname)) {
17 + setupexport(client);
18 + if (client->server->flags & F_COPYONWRITE) {
19 + copyonwrite_prepare(client);
20 + }
21 + setmysockopt(client->net);
22 mainloop(client);
23 + do_run(client->server->postrun, client->exportname);
24 + } else {
25 + msg2(LOG_INFO, "prerun command finished with non-zero code!");
27 - do_run(client->server->postrun, client->exportname);
30 /**