more set_error_string
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@10335 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -197,13 +197,21 @@ read_master_encryptionkey(krb5_context context, const char *filename,
|
|||||||
ssize_t len;
|
ssize_t len;
|
||||||
|
|
||||||
fd = open(filename, O_RDONLY | O_BINARY);
|
fd = open(filename, O_RDONLY | O_BINARY);
|
||||||
if(fd < 0)
|
if(fd < 0) {
|
||||||
return errno;
|
int save_errno = errno;
|
||||||
|
krb5_set_error_string(context, "failed to open %s: %s",
|
||||||
|
filename, streror(save_errno));
|
||||||
|
return save_errno;
|
||||||
|
}
|
||||||
|
|
||||||
len = read(fd, buf, sizeof(buf));
|
len = read(fd, buf, sizeof(buf));
|
||||||
close(fd);
|
close(fd);
|
||||||
if(len < 0)
|
if(len < 0) {
|
||||||
return errno;
|
int save_errno = errno;
|
||||||
|
krb5_set_error_string(context, "error reading %s: %s",
|
||||||
|
filename, streror(save_errno));
|
||||||
|
return save_errno;
|
||||||
|
}
|
||||||
|
|
||||||
ret = decode_EncryptionKey(buf, len, &key, &len);
|
ret = decode_EncryptionKey(buf, len, &key, &len);
|
||||||
memset(buf, 0, sizeof(buf));
|
memset(buf, 0, sizeof(buf));
|
||||||
@@ -235,13 +243,25 @@ read_master_krb4(krb5_context context, const char *filename,
|
|||||||
ssize_t len;
|
ssize_t len;
|
||||||
|
|
||||||
fd = open(filename, O_RDONLY | O_BINARY);
|
fd = open(filename, O_RDONLY | O_BINARY);
|
||||||
if(fd < 0)
|
if(fd < 0) {
|
||||||
return errno;
|
int save_errno = errno;
|
||||||
|
krb5_set_error_string(context, "failed to open %s: %s",
|
||||||
|
filename, streror(save_errno));
|
||||||
|
return save_errno;
|
||||||
|
}
|
||||||
|
|
||||||
len = read(fd, buf, sizeof(buf));
|
len = read(fd, buf, sizeof(buf));
|
||||||
close(fd);
|
close(fd);
|
||||||
if(len < 0)
|
if(len < 0) {
|
||||||
return errno;
|
int save_errno = errno;
|
||||||
|
krb5_set_error_string(context, "error reading %s: %s",
|
||||||
|
filename, streror(save_errno));
|
||||||
|
return save_errno;
|
||||||
|
}
|
||||||
|
if(len != 8) {
|
||||||
|
krb5_set_error_string(context, "bad contents of %s", filename);
|
||||||
|
return HEIM_ERR_EOF; /* XXX file might be too large */
|
||||||
|
}
|
||||||
|
|
||||||
memset(&key, 0, sizeof(key));
|
memset(&key, 0, sizeof(key));
|
||||||
key.keytype = ETYPE_DES_PCBC_NONE;
|
key.keytype = ETYPE_DES_PCBC_NONE;
|
||||||
@@ -271,10 +291,15 @@ hdb_read_master_key(krb5_context context, const char *filename,
|
|||||||
filename = HDB_DB_DIR "/m-key";
|
filename = HDB_DB_DIR "/m-key";
|
||||||
|
|
||||||
f = fopen(filename, "r");
|
f = fopen(filename, "r");
|
||||||
if(f == NULL)
|
if(f == NULL) {
|
||||||
return errno;
|
int save_errno = errno;
|
||||||
|
krb5_set_error_string(context, "failed to open %s: %s",
|
||||||
|
filename, streror(save_errno));
|
||||||
|
return save_errno;
|
||||||
|
}
|
||||||
|
|
||||||
if(fread(buf, 1, 2, f) != 2) {
|
if(fread(buf, 1, 2, f) != 2) {
|
||||||
|
krb5_set_error_string(context, "end of file reading %s", filename);
|
||||||
fclose(f);
|
fclose(f);
|
||||||
return HEIM_ERR_EOF;
|
return HEIM_ERR_EOF;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user