mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 20:32:44 +00:00 
			
		
		
		
	Kernel: Strongly typed user & group ID's
Prior to this change, both uid_t and gid_t were typedef'ed to `u32`. This made it easy to use them interchangeably. Let's not allow that. This patch adds UserID and GroupID using the AK::DistinctNumeric mechanism we've already been employing for pid_t/ProcessID.
This commit is contained in:
		
							parent
							
								
									59335bd8ea
								
							
						
					
					
						commit
						ae197deb6b
					
				
					 44 changed files with 172 additions and 169 deletions
				
			
		|  | @ -353,11 +353,11 @@ public: | |||
|     virtual KResultOr<NonnullRefPtr<Inode>> lookup(StringView name) override; | ||||
|     virtual void flush_metadata() override; | ||||
|     virtual KResultOr<size_t> write_bytes(off_t, size_t, const UserOrKernelBuffer& buffer, FileDescription*) override; | ||||
|     virtual KResultOr<NonnullRefPtr<Inode>> create_child(StringView name, mode_t, dev_t, uid_t, gid_t) override; | ||||
|     virtual KResultOr<NonnullRefPtr<Inode>> create_child(StringView name, mode_t, dev_t, UserID, GroupID) override; | ||||
|     virtual KResult add_child(Inode&, const StringView& name, mode_t) override; | ||||
|     virtual KResult remove_child(const StringView& name) override; | ||||
|     virtual KResult chmod(mode_t) override; | ||||
|     virtual KResult chown(uid_t, gid_t) override; | ||||
|     virtual KResult chown(UserID, GroupID) override; | ||||
|     virtual KResult truncate(u64) override; | ||||
|     virtual KResult set_atime(time_t) override; | ||||
|     virtual KResult set_ctime(time_t) override; | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Andreas Kling
						Andreas Kling