Mon 14 Oct 23:09:15 CEST 2024
This commit is contained in:
		
							parent
							
								
									d81c11b00e
								
							
						
					
					
						commit
						54f272ddb4
					
				
							
								
								
									
										42
									
								
								user/test/filedescribetest.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								user/test/filedescribetest.c
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,42 @@ | |||
| #include "library/errno.h" | ||||
| #include "library/syscalls.h" | ||||
| #include "library/string.h" | ||||
| #include "library/user-io.h" | ||||
| #include "library/malloc.h" | ||||
| 
 | ||||
| #define TAG_BUFFER_SIZE 256 | ||||
| 
 | ||||
| int main(int argc, char *argv[]) | ||||
| { | ||||
| 	char *tag_value = "A simple tag string"; | ||||
| 
 | ||||
| 	printf("Generating/typing all file descriptors.\n"); | ||||
| 	int type = -2; | ||||
| 	int tag = -3; | ||||
| 
 | ||||
| 	int window_descriptor = syscall_open_window(KNO_STDWIN, 1, 1, 1, 1); | ||||
| 	if(!window_descriptor) { | ||||
| 		return 1; | ||||
| 	} | ||||
| 
 | ||||
| 	syscall_object_set_tag(window_descriptor, tag_value); | ||||
| 
 | ||||
| 	int last_descriptor = syscall_object_max(); | ||||
| 	printf("Highest allocated FD: %d\nLast Descriptor: %d\n", window_descriptor, last_descriptor); | ||||
| 
 | ||||
| 	char *tag_string = malloc(sizeof(char) * TAG_BUFFER_SIZE); | ||||
| 
 | ||||
| 	for(int descriptor = 0; descriptor <= last_descriptor; descriptor++) { | ||||
| 		type = syscall_object_type(descriptor); | ||||
| 		tag = syscall_object_get_tag(descriptor, tag_string, TAG_BUFFER_SIZE); | ||||
| 		printf("FD: %d is of type: %d, with tag: ", descriptor, type); | ||||
| 		if(tag != 0) { | ||||
| 			printf("\"%s\"\n", tag_string); | ||||
| 		} | ||||
| 		if(tag == 0) { | ||||
| 			printf("%d\n", tag); | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	return 0; | ||||
| } | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user