)]}'
{
  "commit": "ca4416d0f85b928a2e9afcc3d488c9192dda2956",
  "tree": "96c445da24f0bd21cd65e2b7e398f780efa89884",
  "parents": [
    "ad2dbf2fbb828aafafe72266716cd21b0df741d2"
  ],
  "author": {
    "name": "Maxim Dounin",
    "email": "mdounin@mdounin.ru",
    "time": "Wed May 19 03:13:12 2021 +0300"
  },
  "committer": {
    "name": "Maxim Dounin",
    "email": "mdounin@mdounin.ru",
    "time": "Wed May 19 03:13:12 2021 +0300"
  },
  "message": "Mail: fixed SMTP pipelining to send the response immediately.\n\nPreviously, if there were some pipelined SMTP data in the buffer when\na proxied connection with the backend was established, nginx called\nngx_mail_proxy_handler() to send these data, and not tried to send the\nresponse to the last command.  In most cases, this response was later sent\nalong with the response to the pipelined command, but if for some reason\nclient decides to wait for the response before finishing the next command\nthis might result in a connection hang.\n\nFix is to always call ngx_mail_proxy_handler() to send the response, and\nadditionally post an event to send the pipelined data if needed.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "66aa0ba0981d12dbe68f904c1bb70faaf258034f",
      "old_mode": 33188,
      "old_path": "src/mail/ngx_mail_proxy_module.c",
      "new_id": "38164af95567a3e75805a3fedd0f66212da22fc1",
      "new_mode": 33188,
      "new_path": "src/mail/ngx_mail_proxy_module.c"
    }
  ]
}
