From: Serdar D. <se...@se...> - 2011-01-17 09:18:11
|
Hi, I wrote this two three weeks ago, maybe someone can tell me how fuse write works? Greetings Serdar Am 29.12.10 20:40, schrieb Serdar Dere: > Hello guys, > > I am trying to understand how write works and I guess I made some mistakes. > I am trying to write the buffer buf to a voidpointer. but it stops at 2.2M. > That's why I am thinking, I understand it wrong how write is working, > maybe someone can explain it to me. > > Thanks in advance > > Greetings Serdar > > /** > * writes a file or append to a file. > **/ > static int ossfs_write(const char *path, const char *buf, size_t size, > off_t offset, struct fuse_file_info *fi) { > (void)offset; > oss_inode *node = getNode(path); > if(node == NULL) > return -ENOENT; > > oss_consistency_model_t consmod = oss_transactional_consistency; > oss_alloc_attributes_t attr = oss_default_alloc_attributes; > > void *data = NULL; > if (node->data != NULL){ > data = malloc(sizeof(void)*node->len); > memcpy(data, node->data, node->len); > oss_free(node->data); > } > > node->data = oss_alloc(sizeof(void)*(size+offset), consmod,&attr); > if(data == NULL) > memcpy(node->data,buf,size); > else { > memcpy(node->data,data,offset); > memcpy(node->data+offset,buf,size); > } > > node->len = size+offset; > return size; > } > > ------------------------------------------------------------------------------ > Learn how Oracle Real Application Clusters (RAC) One Node allows customers > to consolidate database storage, standardize their database environment, and, > should the need arise, upgrade to a full multi-node Oracle RAC database > without downtime or disruption > http://p.sf.net/sfu/oracle-sfdevnl > _______________________________________________ > fuse-devel mailing list > fus...@li... > https://lists.sourceforge.net/lists/listinfo/fuse-devel |