<div dir="ltr">Hey everyone,<div><br></div><div>I&#39;ve been trying to figure out both what happens when you checkpoint an open socket and what my options are for restoring that socket (or maybe doing something else at that point in time). It might be best to just describe the program I have and what I want to accomplish.</div><div><br></div><div>I have two programs communicating over a socket. Program A opens a socket and listens for connections, and then program B connects to it. They essentially exchange messages forever in a pattern something like:</div><div><br></div><div>A -&gt; B send next message</div><div>B -&gt; A ok, here&#39;s the next message</div><div><br></div><div>Obviously, in between, A performs some actions. The goal is to checkpoint A after each message is processed and before the next is received (while leaving the process running), so that we can restore to any previous state and reprocess possibly changed messages.</div><div><br></div><div>It&#39;s completely fine for our use case to have to re-establish that socket connection, we don&#39;t actually need or want to try and magically use the same socket (since program B has probably moved on to other things in between).</div><div><br></div><div>Is this a use case for a criu plugin? I&#39;ve tried playing around with the ext-unix-sk flag but I haven&#39;t quite figured anything out yet.</div><div><br></div><div>Any help would be appreciated. Thanks!</div><div><br></div><div>-Ross</div><div><br></div></div>