about summary refs log tree commit diff
path: root/lr.c
diff options
context:
space:
mode:
authorChristian Neukirchen <chneukirchen@gmail.com>2015-10-27 15:19:56 +0100
committerChristian Neukirchen <chneukirchen@gmail.com>2015-10-27 15:19:56 +0100
commitd10807b8daf705c55f1f314a10a8a83a4dfb2fee (patch)
tree24697c8d27367e0e42ec1970fcaa5578db748ae0 /lr.c
parentbea00ebe24f618da8fed01f04b691fcaea823e34 (diff)
downloadlr-d10807b8daf705c55f1f314a10a8a83a4dfb2fee.tar.gz
lr-d10807b8daf705c55f1f314a10a8a83a4dfb2fee.tar.xz
lr-d10807b8daf705c55f1f314a10a8a83a4dfb2fee.zip
add rdev
Diffstat (limited to 'lr.c')
-rw-r--r--lr.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/lr.c b/lr.c
index d7cf116..8a20bfe 100644
--- a/lr.c
+++ b/lr.c
@@ -138,6 +138,7 @@ enum prop {
 	PROP_MTIME,
 	PROP_NAME,
 	PROP_PATH,
+	PROP_RDEV,
 	PROP_SIZE,
 	PROP_TARGET,
 	PROP_TOTAL,
@@ -468,6 +469,8 @@ parse_cmp()
 		return parse_mode();
 	else if (token("mtime"))
 		prop = PROP_MTIME;
+	else if (token("rdev"))
+		prop = PROP_RDEV;
 	else if (token("size"))
 		prop = PROP_SIZE;
 	else if (token("total"))
@@ -813,6 +816,7 @@ eval(struct expr *e, struct fileinfo *fi)
 		case PROP_LINKS: v = fi->sb.st_nlink; break;
 		case PROP_MODE: v = fi->sb.st_mode & 07777; break;
 		case PROP_MTIME: v = fi->sb.st_mtime; break;
+		case PROP_RDEV: v = fi->sb.st_rdev; break;
 		case PROP_SIZE: v = fi->sb.st_size; break;
 		case PROP_TOTAL: v = fi->total; break;
 		case PROP_UID: v = fi->sb.st_uid; break;
@@ -1011,6 +1015,7 @@ print(const void *nodep, const VISIT which, const int depth)
 				case 'k': printf("%jd", (intmax_t)fi->sb.st_blocks / 2); break;
 				case 'd': printf("%d", fi->depth); break;
 				case 'D': printf("%jd", (intmax_t)fi->sb.st_dev); break;
+				case 'R': printf("%jd", (intmax_t)fi->sb.st_rdev); break;
 				case 'i': printf("%jd", (intmax_t)fi->sb.st_ino); break;
 				case 'I': {
 					int i;