Commit f52d53c5 authored by Pavel Emelyanov's avatar Pavel Emelyanov

unix: Make more descriptive error logging for ext socket restore failure

Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
parent 21c663dc
......@@ -94,7 +94,7 @@ int main(int argc, char *argv[])
{ "log-file", required_argument, 0, 'o' },
{ "namespaces", required_argument, 0, 'n' },
{ "root", required_argument, 0, 'r' },
{ "ext-unix-sk", no_argument, 0, 'x' },
{ USK_EXT_PARAM, no_argument, 0, 'x' },
{ "help", no_argument, 0, 'h' },
{ SK_EST_PARAM, no_argument, 0, 42 },
{ "close", required_argument, 0, 43 },
......
......@@ -83,4 +83,6 @@ static inline int sk_decode_shutdown(int val)
return hows[val];
}
#define USK_EXT_PARAM "ext-unix-sk"
#endif /* __CR_SOCKETS_H__ */
......@@ -819,18 +819,21 @@ int resolve_unix_peers(void)
peer = find_unix_sk_by_ino(ui->ue->peer);
if (!peer) {
pr_err("FATAL: Peer %#x unresolved for %#x\n",
ui->ue->peer, ui->ue->ino);
return -1;
}
/*
* Connect to external sockets requires
* special option to be passed.
*/
if (peer &&
(peer->ue->uflags & USK_EXTERN) &&
!(opts.ext_unix_sk))
peer = NULL;
if (!peer) {
pr_err("FATAL: Peer %#x unresolved for %#x\n",
ui->ue->peer, ui->ue->ino);
if ((peer->ue->uflags & USK_EXTERN) &&
!(opts.ext_unix_sk)) {
pr_err("External socket found in image. "
"Consider using the --" USK_EXT_PARAM " option "
"to allow restoring it.\n");
return -1;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment