History

Memory leak in tpm_ascii_bios_measurements_open()

Coverity found a memory leak in tpm_ascii_bios_measurements_open(). If "read_log(log)" fails, then we may leak 'log' and 'log->bios_event_log'.

Jesper Juhl committed 19 years ago

Commit 178554a1 parent 22982a51 file · +8 −3Browse files

Unified · Split

drivers/char/tpm/tpm_bios.c+8−3
@@ -427,7 +427,7 @@ static int tpm_ascii_bios_measurements_open(struct inode *inode, · 426 unmodified lines
427 return -ENOMEM;427 return -ENOMEM;
428 428
429 if ((err = read_log(log)))429 if ((err = read_log(log)))
430 return err;430 goto out_free;
431 431
432 /* now register seq file */432 /* now register seq file */
433 err = seq_open(file, &tpm_ascii_b_measurments_seqops);433 err = seq_open(file, &tpm_ascii_b_measurments_seqops);
@@ -435,10 +435,15 @@ static int tpm_ascii_bios_measurements_open(struct inode *inode, · 1 unmodified line
435 seq = file->private_data;435 seq = file->private_data;
436 seq->private = log;436 seq->private = log;
437 } else {437 } else {
438 kfree(log->bios_event_log);438 goto out_free;
439 kfree(log);
440 }439 }
440
441out:
441 return err;442 return err;
443out_free:
444 kfree(log->bios_event_log);
445 kfree(log);
446 goto out;
442}447}
443 448
444const struct file_operations tpm_ascii_bios_measurements_ops = {449const struct file_operations tpm_ascii_bios_measurements_ops = {

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t