From: Lars Schneider Date: Fri, 05 Aug 2016 09:59:36 GMT Subject: Re: [PATCH v3 03/10] pkt-line: add packet_flush_gentle() Message-ID: <3BA617E0-4DE6-46F6-B148-67265CABE707@gmail.com> In-Reply-To: <20160802195546.GA2660@atze2.lan> > On 02 Aug 2016, at 21:56, Torsten Bögershausen wrote: > > On Sun, Jul 31, 2016 at 11:45:08PM +0200, Lars Schneider wrote: >> >>> On 31 Jul 2016, at 22:36, Torstem Bögershausen wrote: >>> >>> >>> >>>> Am 29.07.2016 um 20:37 schrieb larsxschneider@gmail.com: >>>> >>>> From: Lars Schneider >>>> >>>> packet_flush() would die in case of a write error even though for some callers >>>> an error would be acceptable. >>> What happens if there is a write error ? >>> Basically the protocol is out of synch. >>> Lenght information is mixed up with payload, or the other way >>> around. >>> It may be, that the consequences of a write error are acceptable, >>> because a filter is allowed to fail. >>> What is not acceptable is a "broken" protocol. >>> The consequence schould be to close the fd and tear down all >>> resources. connected to it. >>> In our case to terminate the external filter daemon in some way, >>> and to never use this instance again. >> >> Correct! That is exactly what is happening in kill_protocol2_filter() >> here: > > Wait a second. > Is kill the same as shutdown ? > I would expect that No, kill is used if the filter behaved strangely or signaled an error. "Shutdown" is a graceful shutdown. However, that might not be an ideal name. See the bottom of my discussion with Peff here: http://public-inbox.org/git/74C2CEA6-EAAB-406F-8B37-969654955413%40gmail.com/ > The process terminates itself as soon as it detects EOF. > As there is nothing more read. > > Then the next question: The combination of kill & protocol in kill_protocol(), > what does it mean ? I renamed that function to "kill_multi_file_filter". Initially I called the multi file filter "protocol" (bad decision I know) and named the functions accordingly. > Is it more like a graceful shutdown_protocol() ? Yes. Thanks, Lars