সর্বশেষ POSIX নির্দিষ্টকরণ (POSIX.1-2008) এর ত্রুটি নম্বর উল্লেখ
[EISDIR]
একটি নির্দেশিকা. লেখার মোড নির্দিষ্ট করে একটি ডিরেক্টরি খোলার চেষ্টা করা হয়েছিল।
এর অর্থ হ'ল, পসিক্স কমপ্লায়েন্ট ওএস-এ আপনি কোনও ডিরেক্টরি পড়তে সক্ষম হন () যদি আপনি কেবল এটি পড়ে (ও_আরডোনলি) পড়ে থাকেন।
আমি এটি একটি নেটবিএসডি (যা সত্যিই পসিক্স সম্পর্কে যত্নশীল) বাক্সে চেষ্টা করেছি এবং প্রত্যাশার মতো কাজ করে, যখন এটি জিআইইউ / লিনাক্সে আইআইএসডিআইআর-এর সাথে ব্যর্থ হয় (যা হওয়া উচিত নয়)।
লিনাক্সের একটি তাত্ক্ষণিক দৃষ্টিভঙ্গি এটিকে উদ্দেশ্য করে দেখায় ( http://lxr.free-electrons.com/source/fs/libfs.c#L189 ):
ssize_t generic_read_dir(struct file *filp, char __user *buf, size_t siz, loff_t *ppos)
{
return -EISDIR;
}
যখন একটি কংক্রিট ফাইল সিস্টেম বাস্তবায়ন এটিকে ওভাররাইড করতে পারে (যেমন সিইপিএইচ করে: http://lxr.free-electrons.com/source/fs/ceph/dir.c#L1142 ), ডিফল্ট আচরণটি যখনই কেউ চেষ্টা করছে তখনই আইআইএসডিআইআর ফিরিয়ে আনা হয়) একটি ডিরেক্টরি পড়ুন, এমনকি যদি এটি কেবল পঠনযোগ্য হয়।
আমি এই পরিবর্তনটি 2.0.x এ ফিরে পেয়েছি এবং কমপক্ষে এক্স 2 ফাইল সিস্টেমের ক্ষেত্রে এখনও এটি ছিল।
সুতরাং, হ্যাঁ, একটি পসিক্স কমপ্লায়েন্ট ওএসে আপনাকে একটি ডিরেক্টরি পড়তে পারা উচিত, তবে কিছু কার্নেল (যেমন লিনাক্স এবং, সম্ভবত অন্যরা) কেবল এই শর্তটিকে উপেক্ষা করে মানটি ভঙ্গ করে।