static PyObject * Wmii_create(Wmii *self, PyObject *args) { IxpCFid *fid; const char *file; const char *data; if (!PyArg_ParseTuple(args, "s|s", &file, &data)) { PyErr_SetString(PyExc_TypeError, "Wmii.create() requires 1 argument"); return NULL; } fid = ixp_create(self->client, file, 0777, P9_OWRITE); if(fid == NULL) { PyErr_SetObject(PyExc_IOError, PyString_FromFormat("Can't create file '%s'\n", file)); } if((fid->qid.type&P9_DMDIR) == 0) { if(strlen(data)) { ixp_write(fid, data, strlen(data)); } } ixp_close(fid); Py_RETURN_NONE; }
static int xcreate(int argc, char *argv[]) { IxpCFid *fid; char *file; ARGBEGIN{ default: usage(); }ARGEND; file = EARGF(usage()); fid = ixp_create(client, file, 0777, P9_OWRITE); if(fid == nil) fatal("Can't create file '%s': %s\n", file, ixp_errbuf()); if((fid->qid.type&P9_DMDIR) == 0) write_data(fid, file); return 0; }