Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 83d0bdc7 authored by Miroslav Lichvar's avatar Miroslav Lichvar Committed by David S. Miller
Browse files

ptp: check gettime64 return code in PTP_SYS_OFFSET ioctl



If a gettime64 call fails, return the error and avoid copying data back
to user.

Cc: Richard Cochran <richardcochran@gmail.com>
Cc: Jacob Keller <jacob.e.keller@intel.com>
Signed-off-by: default avatarMiroslav Lichvar <mlichvar@redhat.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent fbb960ac
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -228,7 +228,9 @@ long ptp_ioctl(struct posix_clock *pc, unsigned int cmd, unsigned long arg)
			pct->sec = ts.tv_sec;
			pct->nsec = ts.tv_nsec;
			pct++;
			ptp->info->gettime64(ptp->info, &ts);
			err = ptp->info->gettime64(ptp->info, &ts);
			if (err)
				goto out;
			pct->sec = ts.tv_sec;
			pct->nsec = ts.tv_nsec;
			pct++;
@@ -281,6 +283,7 @@ long ptp_ioctl(struct posix_clock *pc, unsigned int cmd, unsigned long arg)
		break;
	}

out:
	kfree(sysoff);
	return err;
}