writeable => writable
This commit is contained in:
		
							parent
							
								
									48b824703b
								
							
						
					
					
						commit
						d4c64e5d43
					
				
					 5 changed files with 11 additions and 11 deletions
				
			
		
							
								
								
									
										4
									
								
								fd.c
									
										
									
									
									
								
							
							
						
						
									
										4
									
								
								fd.c
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -58,7 +58,7 @@ fd_alloc(void)
 | 
			
		|||
int
 | 
			
		||||
fd_write(struct fd *fd, char *addr, int n)
 | 
			
		||||
{
 | 
			
		||||
  if(fd->writeable == 0)
 | 
			
		||||
  if(fd->writable == 0)
 | 
			
		||||
    return -1;
 | 
			
		||||
  if(fd->type == FD_PIPE){
 | 
			
		||||
    return pipe_write(fd->pipe, addr, n);
 | 
			
		||||
| 
						 | 
				
			
			@ -114,7 +114,7 @@ fd_close(struct fd *fd)
 | 
			
		|||
    release(&fd_table_lock);
 | 
			
		||||
 | 
			
		||||
    if(dummy.type == FD_PIPE){
 | 
			
		||||
      pipe_close(dummy.pipe, dummy.writeable);
 | 
			
		||||
      pipe_close(dummy.pipe, dummy.writable);
 | 
			
		||||
    } else if(dummy.type == FD_FILE){
 | 
			
		||||
      idecref(dummy.ip);
 | 
			
		||||
    } else {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										2
									
								
								fd.h
									
										
									
									
									
								
							
							
						
						
									
										2
									
								
								fd.h
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -2,7 +2,7 @@ struct fd {
 | 
			
		|||
  enum { FD_CLOSED, FD_NONE, FD_PIPE, FD_FILE } type;
 | 
			
		||||
  int ref; // reference count
 | 
			
		||||
  char readable;
 | 
			
		||||
  char writeable;
 | 
			
		||||
  char writable;
 | 
			
		||||
  struct pipe *pipe;
 | 
			
		||||
  struct inode *ip;
 | 
			
		||||
  uint off;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										2
									
								
								kalloc.c
									
										
									
									
									
								
							
							
						
						
									
										2
									
								
								kalloc.c
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -51,7 +51,7 @@ kfree(char *cp, int len)
 | 
			
		|||
  if(len % PAGE)
 | 
			
		||||
    panic("kfree");
 | 
			
		||||
 | 
			
		||||
  // XXX fill with junk to help debug
 | 
			
		||||
  // Fill with junk to catch dangling refs.
 | 
			
		||||
  for(i = 0; i < len; i++)
 | 
			
		||||
    cp[i] = 1;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										8
									
								
								pipe.c
									
										
									
									
									
								
							
							
						
						
									
										8
									
								
								pipe.c
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -37,11 +37,11 @@ pipe_alloc(struct fd **fd1, struct fd **fd2)
 | 
			
		|||
  initlock(&p->lock, "pipe");
 | 
			
		||||
  (*fd1)->type = FD_PIPE;
 | 
			
		||||
  (*fd1)->readable = 1;
 | 
			
		||||
  (*fd1)->writeable = 0;
 | 
			
		||||
  (*fd1)->writable = 0;
 | 
			
		||||
  (*fd1)->pipe = p;
 | 
			
		||||
  (*fd2)->type = FD_PIPE;
 | 
			
		||||
  (*fd2)->readable = 0;
 | 
			
		||||
  (*fd2)->writeable = 1;
 | 
			
		||||
  (*fd2)->writable = 1;
 | 
			
		||||
  (*fd2)->pipe = p;
 | 
			
		||||
  return 0;
 | 
			
		||||
 oops:
 | 
			
		||||
| 
						 | 
				
			
			@ -59,11 +59,11 @@ pipe_alloc(struct fd **fd1, struct fd **fd2)
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
pipe_close(struct pipe *p, int writeable)
 | 
			
		||||
pipe_close(struct pipe *p, int writable)
 | 
			
		||||
{
 | 
			
		||||
  acquire(&p->lock);
 | 
			
		||||
 | 
			
		||||
  if(writeable){
 | 
			
		||||
  if(writable){
 | 
			
		||||
    p->writeopen = 0;
 | 
			
		||||
    wakeup(&p->readp);
 | 
			
		||||
  } else {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -260,13 +260,13 @@ sys_open(void)
 | 
			
		|||
  fd->type = FD_FILE;
 | 
			
		||||
  if(arg1 & O_RDWR) {
 | 
			
		||||
    fd->readable = 1;
 | 
			
		||||
    fd->writeable = 1;
 | 
			
		||||
    fd->writable = 1;
 | 
			
		||||
  } else if(arg1 & O_WRONLY) {
 | 
			
		||||
    fd->readable = 0;
 | 
			
		||||
    fd->writeable = 1;
 | 
			
		||||
    fd->writable = 1;
 | 
			
		||||
  } else {
 | 
			
		||||
    fd->readable = 1;
 | 
			
		||||
    fd->writeable = 0;
 | 
			
		||||
    fd->writable = 0;
 | 
			
		||||
  }
 | 
			
		||||
  fd->ip = ip;
 | 
			
		||||
  fd->off = 0;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue