Fredrik Fornwall
8 years ago
2 changed files with 29 additions and 0 deletions
@ -0,0 +1,28 @@ |
|||||
|
diff -u -r ../dropbear-2017.75/gensignkey.c ./gensignkey.c
|
||||
|
--- ../dropbear-2017.75/gensignkey.c 2017-05-18 16:47:01.000000000 +0200
|
||||
|
+++ ./gensignkey.c 2017-06-13 23:50:59.888597482 +0200
|
||||
|
@@ -137,6 +137,16 @@
|
||||
|
goto out; |
||||
|
} |
||||
|
|
||||
|
+#ifdef __ANDROID__
|
||||
|
+ /* Hard links are not possible and renam. */
|
||||
|
+ if (skip_exist && access(filename, F_OK) == 0) {
|
||||
|
+ /* Ok. */
|
||||
|
+ } else if (rename(fn_temp, filename) < 0) {
|
||||
|
+ dropbear_log(LOG_ERR, "Failed moving key file to %s: %s", filename,
|
||||
|
+ strerror(errno));
|
||||
|
+ ret = DROPBEAR_FAILURE;
|
||||
|
+ }
|
||||
|
+#else
|
||||
|
if (link(fn_temp, filename) < 0) { |
||||
|
/* If generating keys on connection (skipexist) it's OK to get EEXIST |
||||
|
- we probably just lost a race with another connection to generate the key */ |
||||
|
@@ -148,6 +158,7 @@
|
||||
|
goto out; |
||||
|
} |
||||
|
} |
||||
|
+#endif
|
||||
|
|
||||
|
out: |
||||
|
if (buf) { |
Loading…
Reference in new issue