tools/virtiofsd: xattr name mapping examples
Add a few examples of xattrmaps to the documentation. Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Message-Id: <20201023165812.36028-5-dgilbert@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
This commit is contained in:
		
							parent
							
								
									6409cf19ca
								
							
						
					
					
						commit
						491bfaea3b
					
				@ -219,6 +219,56 @@ e.g.:
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  would hide 'security.' xattr's in listxattr from the server.
 | 
					  would hide 'security.' xattr's in listxattr from the server.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					xattr-mapping Examples
 | 
				
			||||||
 | 
					----------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					1) Prefix all attributes with 'user.virtiofs.'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					::
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					-o xattrmap=":prefix:all::user.virtiofs.::bad:all:::"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This uses two rules, using : as the field separator;
 | 
				
			||||||
 | 
					the first rule prefixes and strips 'user.virtiofs.',
 | 
				
			||||||
 | 
					the second rule hides any non-prefixed attributes that
 | 
				
			||||||
 | 
					the host set.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					2) Prefix 'trusted.' attributes, allow others through
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					::
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   "/prefix/all/trusted./user.virtiofs./
 | 
				
			||||||
 | 
					    /bad/server//trusted./
 | 
				
			||||||
 | 
					    /bad/client/user.virtiofs.//
 | 
				
			||||||
 | 
					    /ok/all///"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Here there are four rules, using / as the field
 | 
				
			||||||
 | 
					separator, and also demonstrating that new lines can
 | 
				
			||||||
 | 
					be included between rules.
 | 
				
			||||||
 | 
					The first rule is the prefixing of 'trusted.' and
 | 
				
			||||||
 | 
					stripping of 'user.virtiofs.'.
 | 
				
			||||||
 | 
					The second rule hides unprefixed 'trusted.' attributes
 | 
				
			||||||
 | 
					on the host.
 | 
				
			||||||
 | 
					The third rule stops a guest from explicitly setting
 | 
				
			||||||
 | 
					the 'user.virtiofs.' path directly.
 | 
				
			||||||
 | 
					Finally, the fourth rule lets all remaining attributes
 | 
				
			||||||
 | 
					through.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					3) Hide 'security.' attributes, and allow everything else
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					::
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    "/bad/all/security./security./
 | 
				
			||||||
 | 
					     /ok/all///'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The first rule combines what could be separate client and server
 | 
				
			||||||
 | 
					rules into a single 'all' rule, matching 'security.' in either
 | 
				
			||||||
 | 
					client arguments or lists returned from the host.  This stops
 | 
				
			||||||
 | 
					the client seeing any 'security.' attributes on the server and
 | 
				
			||||||
 | 
					stops it setting any.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Examples
 | 
					Examples
 | 
				
			||||||
--------
 | 
					--------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user