1
0
Fork 0
mirror of git://git.gnupg.org/gnupg.git synced 2025-07-02 22:46:30 +02:00

Replace most calls to open by a new wrapper.

* common/sysutils.c (any8bitchar) [W32]: New.
(gnupg_open): New.  Replace most calls to open by this.
* common/iobuf.c (any8bitchar) [W32]: New.
(direct_open) [W32]: Use CreateFileW if needed.
--

This is yet another step for full Unicode support on Windows.

GnuPG-bug-id: 5098
(cherry picked from commit 4dcef0e178)
This commit is contained in:
Werner Koch 2020-10-20 14:08:35 +02:00
parent d65ea29683
commit 86e52e3c33
No known key found for this signature in database
GPG key ID: E3FDFF218E45B72B
8 changed files with 79 additions and 26 deletions

View file

@ -1334,10 +1334,10 @@ open_info_file (const char *fname, int for_write, int binary)
do
{
if (for_write)
fd = open (fname, O_CREAT | O_TRUNC | O_WRONLY | binary,
S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP);
fd = gnupg_open (fname, O_CREAT | O_TRUNC | O_WRONLY | binary,
S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP);
else
fd = open (fname, O_RDONLY | binary);
fd = gnupg_open (fname, O_RDONLY | binary, 0);
}
while (fd == -1 && errno == EINTR);
/* } */

View file

@ -753,7 +753,7 @@ tdbio_set_dbname (ctrl_t ctrl, const char *new_dbname,
log_fatal (_("can't create '%s': %s\n"), fname, strerror (errno));
es_fclose (fp);
db_fd = open (db_name, O_RDWR | MY_O_BINARY);
db_fd = gnupg_open (db_name, O_RDWR | MY_O_BINARY, 0);
if (db_fd == -1)
log_fatal (_("can't open '%s': %s\n"), db_name, strerror (errno));
@ -813,7 +813,7 @@ open_db ()
(int)prevrc, (int)GetLastError ());
}
#else /*!HAVE_W32CE_SYSTEM*/
db_fd = open (db_name, O_RDWR | MY_O_BINARY );
db_fd = gnupg_open (db_name, O_RDWR | MY_O_BINARY, 0);
if (db_fd == -1 && (errno == EACCES
#ifdef EROFS
|| errno == EROFS
@ -821,7 +821,7 @@ open_db ()
)
) {
/* Take care of read-only trustdbs. */
db_fd = open (db_name, O_RDONLY | MY_O_BINARY );
db_fd = gnupg_open (db_name, O_RDONLY | MY_O_BINARY, 0);
if (db_fd != -1 && !opt.quiet)
log_info (_("Note: trustdb not writable\n"));
}