本文整理汇总了C++中smbc_open函数的典型用法代码示例。如果您正苦于以下问题:C++ smbc_open函数的具体用法?C++ smbc_open怎么用?C++ smbc_open使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了smbc_open函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: main
int main(int argc, char** argv)
{
int err = -1;
int fd = 0;
int msg_len = 0;
char url[MAX_BUFF_SIZE];
char* message;
char* response;
memset(g_workgroup, '\0', MAX_BUFF_SIZE);
memset(url, '\0', MAX_BUFF_SIZE);
if ( argc == 6 )
{
strncpy(g_workgroup,argv[1],strlen(argv[1]));
strncpy(g_username,argv[2],strlen(argv[2]));
strncpy(g_password,argv[3],strlen(argv[3]));
strncpy(url,argv[4],strlen(argv[4]));
msg_len = strlen(argv[5])+1;
message = malloc(msg_len);
response = malloc(msg_len);
message[msg_len - 1] = 0;
strncpy(message,argv[5],msg_len);
smbc_init(auth_fn, 0);
smbc_unlink(url);
fd = smbc_open(url,O_RDWR | O_CREAT, 0666);
smbc_close(fd);
strncpy(g_username,"xxxxxxxx",8);
strncpy(g_password,"xxxxxxxx",8);
fd = smbc_open(url, O_RDWR, 0666);
if (fd < 0)
err = errno;
else {
smbc_write(fd, message, msg_len);
err = errno;
smbc_close(fd);
}
free(message);
free(response);
}
return err;
}
开发者ID:sprymak,项目名称:samba,代码行数:57,代码来源:write_13.c
示例2: main
int main(int argc, char** argv)
{
int err = -1;
int fd = 0;
int msg_len = 0;
char url[MAX_BUFF_SIZE];
char* message;
char* response;
bzero(g_workgroup,MAX_BUFF_SIZE);
bzero(url,MAX_BUFF_SIZE);
if ( argc == 6 )
{
strncpy(g_workgroup,argv[1],strlen(argv[1]));
strncpy(g_username,argv[2],strlen(argv[2]));
strncpy(g_password,argv[3],strlen(argv[3]));
strncpy(url,argv[4],strlen(argv[4]));
msg_len = strlen(argv[5])+1;
message = malloc(msg_len);
response = malloc(msg_len);
message[msg_len - 1] = 0;
strncpy(message,argv[5],msg_len);
smbc_init(auth_fn, 0);
smbc_unlink(url);
fd = smbc_open(url,O_RDWR | O_CREAT, 0666);
smbc_write(fd, message, msg_len);
smbc_close(fd);
fd = smbc_open(url,O_WRONLY, 0666);
err = smbc_read(fd,response,msg_len);
free(message);
free(response);
if ( err < 0 )
err = 1;
else if ( err != msg_len )
err = 1;
else
err = 0;
}
return err;
}
开发者ID:srimalik,项目名称:samba,代码行数:53,代码来源:read_3.c
示例3: smbcfs_open
static int smbcfs_open(const char* const path, struct fuse_file_info* const fi)
{
const std::string smbcfs_path = smbcfs_root_path + path;
#ifdef MUTEX_LOCK
pthread_mutex_lock(&mutex_lock);
#endif
const int ret_open = smbc_open(smbcfs_path.c_str(), fi->flags, 0);
#ifdef MUTEX_LOCK
pthread_mutex_unlock(&mutex_lock);
#endif
#ifdef SMBCFS_DEBUG
fprintf(stderr, "[smbc_open] %s %p => %d\n",
smbcfs_path.c_str(), fi, ret_open);
#endif
if(ret_open<0) { return ret_open; }
fi->fh = ret_open;
return 0;
}
开发者ID:aont,项目名称:smbcfs,代码行数:26,代码来源:main.cpp
示例4: main
int main(int argc, char* argv[])
{
int fd;
struct stat st1;
struct stat st2;
char * pUrl = argv[1];
if(argc != 2)
{
printf("usage: %s <file_url>\n", argv[0]);
return 1;
}
smbc_init(get_auth_data_fn, 0);
if (smbc_stat(pUrl, &st1) < 0)
{
perror("smbc_stat");
return 1;
}
if ((fd = smbc_open(pUrl, O_RDONLY, 0)) < 0)
{
perror("smbc_open");
return 1;
}
if (smbc_fstat(fd, &st2) < 0)
{
perror("smbc_fstat");
return 1;
}
smbc_close(fd);
#define COMPARE(name, field) \
if (st1.field != st2.field) \
{ \
printf("Field " name " MISMATCH: st1=%lu, st2=%lu\n", \
(unsigned long) st1.field, \
(unsigned long) st2.field); \
}
COMPARE("st_dev", st_dev);
COMPARE("st_ino", st_ino);
COMPARE("st_mode", st_mode);
COMPARE("st_nlink", st_nlink);
COMPARE("st_uid", st_uid);
COMPARE("st_gid", st_gid);
COMPARE("st_rdev", st_rdev);
COMPARE("st_size", st_size);
COMPARE("st_blksize", st_blksize);
COMPARE("st_blocks", st_blocks);
COMPARE("st_atime", st_atime);
COMPARE("st_mtime", st_mtime);
COMPARE("st_ctime", st_ctime);
return 0;
}
开发者ID:AIdrifter,项目名称:samba,代码行数:60,代码来源:teststat3.c
示例5: OpenForWrite
void* OpenForWrite(VFSURL* url, bool bOverWrite)
{
CSMB2::Get().Init();
// we can't open files like smb://file.f or smb://server/file.f
// if a file matches the if below return false, it can't exist on a samba share.
if (!IsValidFile(url->filename))
return NULL;
std::string strFileName = GetAuthenticatedPath(url);
PLATFORM::CLockObject lock(CSMB2::Get());
SMBContext* result = new SMBContext;
if (bOverWrite)
{
XBMC->Log(ADDON::LOG_INFO, "FileSmb::OpenForWrite() called with overwriting enabled! - %s", strFileName.c_str());
result->fd = smbc_creat(strFileName.c_str(), 0);
}
else
{
result->fd = smbc_open(strFileName.c_str(), O_RDWR, 0);
}
if (result->fd == -1)
{
// write error to logfile
XBMC->Log(ADDON::LOG_ERROR, "FileSmb->Open: Unable to open file : '%s'\nunix_err:'%x' error : '%s'", strFileName.c_str(), errno, strerror(errno));
delete result;
return NULL;
}
// We've successfully opened the file!
return result;
}
开发者ID:hudokkow,项目名称:vfs.smb,代码行数:33,代码来源:SMBFile.cpp
示例6: open_f
static int open_f (stream_t *stream, int mode, void *opts, int* file_format) {
struct stream_priv_s *p = (struct stream_priv_s*)opts;
char *filename;
mode_t m = 0;
off_t len;
int fd, err;
filename = stream->url;
if(mode == STREAM_READ)
m = O_RDONLY;
else if (mode == STREAM_WRITE) //who's gonna do that ?
m = O_RDWR|O_CREAT|O_TRUNC;
else {
mp_msg(MSGT_OPEN, MSGL_ERR, "[smb] Unknown open mode %d\n", mode);
m_struct_free (&stream_opts, opts);
return STREAM_UNSUPPORTED;
}
if(!filename) {
mp_msg(MSGT_OPEN,MSGL_ERR, "[smb] Bad url\n");
m_struct_free(&stream_opts, opts);
return STREAM_ERROR;
}
err = smbc_init(smb_auth_fn, 1);
if (err < 0) {
mp_msg(MSGT_OPEN,MSGL_ERR,MSGTR_SMBInitError,err);
m_struct_free(&stream_opts, opts);
return STREAM_ERROR;
}
fd = smbc_open(filename, m,0644);
if (fd < 0) {
mp_msg(MSGT_OPEN,MSGL_ERR,MSGTR_SMBFileNotFound, filename);
m_struct_free(&stream_opts, opts);
return STREAM_ERROR;
}
stream->flags = mode;
len = 0;
if(mode == STREAM_READ) {
len = smbc_lseek(fd,0,SEEK_END);
smbc_lseek (fd, 0, SEEK_SET);
}
if(len > 0 || mode == STREAM_WRITE) {
stream->flags |= MP_STREAM_SEEK;
stream->seek = seek;
if(mode == STREAM_READ) stream->end_pos = len;
}
stream->type = STREAMTYPE_SMB;
stream->fd = fd;
stream->fill_buffer = fill_buffer;
stream->write_buffer = write_buffer;
stream->close = close_f;
stream->control = control;
m_struct_free(&stream_opts, opts);
return STREAM_OK;
}
开发者ID:NeeMeese,项目名称:mplayer-ce,代码行数:60,代码来源:stream_smb.c
示例7: main
int main(int argc, char** argv)
{
int err = -1;
int fd1 = 0;
char url[MAX_BUFF_SIZE];
memset(g_workgroup, '\0', MAX_BUFF_SIZE);
memset(url, '\0', MAX_BUFF_SIZE);
if ( argc == 5 )
{
strncpy( g_workgroup, argv[1], strlen(argv[1]) );
strncpy( g_username, argv[2], strlen(argv[2]) );
strncpy( g_password, argv[3], strlen(argv[3]) );
strncpy( url, argv[4], strlen(argv[4]) );
smbc_init( auth_fn, 0 );
fd1 = smbc_open( url, O_RDWR | O_CREAT, 0666 );
smbc_close( fd1 );
err = smbc_rmdir( url );
if ( err < 0 )
err = 1;
else
err = 0;
}
return err;
}
开发者ID:sprymak,项目名称:samba,代码行数:34,代码来源:rmdir_5.c
示例8: main
int main(int argc, char** argv)
{
int err = -1;
char url[MAX_BUFF_SIZE];
bzero(g_workgroup,MAX_BUFF_SIZE);
bzero(url,MAX_BUFF_SIZE);
if ( argc == 6 )
{
strncpy(g_workgroup,argv[1],strlen(argv[1]));
strncpy(g_username,argv[2],strlen(argv[2]));
strncpy(g_password,argv[3],strlen(argv[3]));
strncpy(url,argv[4],strlen(argv[4]));
smbc_init(auth_fn, 0);
smbc_open(url,O_RDWR | O_CREAT,0666);
err = smbc_rename( url, argv[5] );
if ( err < 0 )
err = 1;
}
return err;
}
开发者ID:0x24bin,项目名称:winexe-1,代码行数:27,代码来源:rename_3.c
示例9: get_smb_server_fd
int get_smb_server_fd(struct SMB_DS *ds, char* filename)
{
int ret, fd, i;
char buf[256+1];
ret = smbc_init(smb_auth_fn, 0);NE_ERR(ret, 0);
for(i=0;i<strlen(ds->path);i++)
{
if(ds->path[i]=='\\')
ds->path[i] = '/';
}
sprintf(buf, "smb://%s/%s/%s", ds->server, ds->path, filename);
buf[256]='\0';
//fprintf(stderr, "%s\n", buf);
if(ds->user[0]!='\0')
strcpy(smb_username, ds->user);
else
strcpy(smb_username, "dummy");
strcpy(smb_password, ds->passwd);
//fprintf(stderr, "%s %s\n", smb_username, smb_password);
fd = smbc_open(buf, O_RDWR | O_CREAT | O_TRUNC, 0666);EQ_ERR(fd, -1);
return fd;
errout:
if(fd != -1)
smbc_close(fd);
return -1;
}
开发者ID:niubl,项目名称:camera_project,代码行数:28,代码来源:smbc_put.c
示例10: open
/*****************************************************
a wrapper for open()
*******************************************************/
int smbw_open(const char *fname, int flags, mode_t mode)
{
int client_fd;
int smbw_fd;
char path[PATH_MAX];
SMBW_INIT();
if (!fname) {
errno = EINVAL;
return -1;
}
smbw_fd = (smbw_libc.open)(SMBW_DUMMY, O_WRONLY, 0200);
if (smbw_fd == -1) {
errno = EMFILE;
return -1;
}
smbw_fix_path(fname, path);
if (flags == creat_bits) {
client_fd = smbc_creat(path, mode);
} else {
client_fd = smbc_open(path, flags, mode);
}
if (client_fd < 0) {
(* smbw_libc.close)(smbw_fd);
return -1;
}
smbw_fd_map[smbw_fd] = client_fd;
smbw_ref(client_fd, SMBW_RCT_Increment);
return smbw_fd;
}
开发者ID:AllardJ,项目名称:Tomato,代码行数:38,代码来源:smbw.c
示例11: FREPARE_SMB_OPER
int FSSmb::OpenRead( FSPath& path, int flags, int* err, FSCInfo* info )
{
FREPARE_SMB_OPER( lock, info, &_param );
int n = smbc_open( pathBuffer1.SetPath( path ), O_RDONLY | OPENFLAG_LARGEFILE, 0 );
SetError( err, errno );
return n < 0 ? -1 : n;
}
开发者ID:Serguei666,项目名称:WalCommander,代码行数:8,代码来源:vfs-smb.cpp
示例12: open_f
static int open_f (stream_t *stream, int mode)
{
char *filename;
mode_t m = 0;
int64_t len;
int fd, err;
struct priv *priv = talloc_zero(stream, struct priv);
stream->priv = priv;
filename = stream->url;
if(mode == STREAM_READ)
m = O_RDONLY;
else if (mode == STREAM_WRITE) //who's gonna do that ?
m = O_RDWR|O_CREAT|O_TRUNC;
else {
MP_ERR(stream, "[smb] Unknown open mode %d\n", mode);
return STREAM_UNSUPPORTED;
}
if(!filename) {
MP_ERR(stream, "[smb] Bad url\n");
return STREAM_ERROR;
}
err = smbc_init(smb_auth_fn, 1);
if (err < 0) {
MP_ERR(stream, "Cannot init the libsmbclient library: %d\n",err);
return STREAM_ERROR;
}
fd = smbc_open(filename, m,0644);
if (fd < 0) {
MP_ERR(stream, "Could not open from LAN: '%s'\n", filename);
return STREAM_ERROR;
}
stream->flags = mode;
len = 0;
if(mode == STREAM_READ) {
len = smbc_lseek(fd,0,SEEK_END);
smbc_lseek (fd, 0, SEEK_SET);
}
if(len > 0 || mode == STREAM_WRITE) {
stream->flags |= MP_STREAM_SEEK;
stream->seek = seek;
if(mode == STREAM_READ) stream->end_pos = len;
}
priv->fd = fd;
stream->fill_buffer = fill_buffer;
stream->write_buffer = write_buffer;
stream->close = close_f;
stream->control = control;
return STREAM_OK;
}
开发者ID:hroncok,项目名称:mpv,代码行数:57,代码来源:stream_smb.c
示例13: smbc_wrapper_open
int smbc_wrapper_open(connection* con, const char *furl, int flags, mode_t mode)
{
if(con->mode== SMB_BASIC)
return smbc_open(furl, flags, mode);
else if(con->mode == SMB_NTLM)
return smbc_cli_open(con->smb_info->cli, furl, flags);
return -1;
}
开发者ID:heartshare,项目名称:asuswrt-merlin,代码行数:9,代码来源:smb_auth.c
示例14: main
int main(int argc, char** argv)
{
int err = -1;
int fd = 0;
int msg_len = 0;
char url[MAX_BUFF_SIZE];
char* message;
bzero(g_workgroup,MAX_BUFF_SIZE);
bzero(url,MAX_BUFF_SIZE);
bzero(g_print_user,MAX_BUFF_SIZE);
bzero(g_print_name,MAX_BUFF_SIZE);
g_print_id = 0;
g_print_priority = 0;
g_print_size = 0;
if ( argc == 7 )
{
strncpy(g_workgroup,argv[1],strlen(argv[1]));
strncpy(g_username,argv[2],strlen(argv[2]));
strncpy(g_password,argv[3],strlen(argv[3]));
strncpy(url,argv[4],strlen(argv[4]));
msg_len = strlen(argv[5])+1;
message = malloc(msg_len);
message[msg_len - 1] = 0;
strncpy(message,argv[5],msg_len);
/* printf("Message: %s\n",message); */
/* printf("Message len: %i\n",msg_len); */
smbc_init(auth_fn, 0);
smbc_unlink(url);
fd = smbc_open(url,O_RDWR | O_CREAT, 0666);
smbc_write(fd, message, msg_len);
smbc_close(fd);
free(message);
smbc_print_file(url,argv[6]);
smbc_list_print_jobs(argv[6],print_list_fn);
g_print_id = -1;
err = smbc_unlink_print_job(argv[6],g_print_id);
if ( err < 0 )
err = 1;
else
err = 0;
}
return err;
}
开发者ID:0x24bin,项目名称:winexe-1,代码行数:57,代码来源:unlink_print_job_1.c
示例15: SMB_upload
/* upload file */
int SMB_upload(char *localpath, int index)
{
if(access(localpath, F_OK) != 0)
{
printf("Local has no %s\n", localpath);
return LOCAL_FILE_LOST;
}
write_log(S_UPLOAD, "", localpath, index);
SMB_init(index);
int buflen;
char buffer[4096] = {0};
char *serverpath = localpath_to_serverpath(localpath, index);
int smb_fd = smbc_open(serverpath, O_RDWR|O_CREAT, FILE_MODE);
int cli_fd;
if((cli_fd = open(localpath, O_RDONLY, FILE_MODE)) > 0)
{//以只读的方式打开,文件
DEBUG("open localpath sucess\n");
unsigned long long cli_filesize = 0;
unsigned long long smb_filesize = 0;
cli_filesize = lseek(cli_fd, 0L, SEEK_END);
lseek(cli_fd, 0L, SEEK_SET);//read or write 文件的偏移量
//2014.11.19 by sherry 判断上传是否成功
//buflen = read(cli_fd, buffer, sizeof(buffer));
//DEBUG("buflen=%d\n",buflen);
//while(buflen > 0 && exit_loop == 0)
while((buflen = read(cli_fd, buffer, sizeof(buffer))) > 0 && exit_loop == 0)
{
smb_filesize += buflen;
//2014.11.19 by sherry 判断上传是否成功
//smbc_write(smb_fd, buffer, buflen);//smb_fd为server端的文件
int res=0;
res=smbc_write(smb_fd, buffer, buflen);
if(res==-1)
return -1;
printf("\rUpload [%s] percent - %f ", localpath, (float)smb_filesize/(float)cli_filesize);
}
if(smb_filesize != cli_filesize && exit_loop != 0)
{
DEBUG("smb_filesize != cli_filesize && exit_loop != 0");
FILE *f_stream = fopen(g_pSyncList[index]->up_item_file, "w");
fprintf(f_stream, "%s", localpath);
fclose(f_stream);
}
smbc_close(smb_fd);
close(cli_fd);
DEBUG("upload --end\n");
}
free(serverpath);
return 0;
}
开发者ID:rjknight123,项目名称:asuswrt-merlin,代码行数:57,代码来源:smb_api.c
示例16: main
int main(int argc, char** argv)
{
int err = -1;
int fd = 0;
int msg_len = 0;
char url[MAX_BUFF_SIZE];
char* message = NULL;
bzero(g_workgroup,MAX_BUFF_SIZE);
bzero(url,MAX_BUFF_SIZE);
if ( argc == 5 )
{
strncpy(g_workgroup,argv[1],strlen(argv[1]));
strncpy(g_username,argv[2],strlen(argv[2]));
strncpy(g_password,argv[3],strlen(argv[3]));
strncpy(url,argv[4],strlen(argv[4]));
smbc_init(auth_fn, 0);
smbc_unlink(url);
fd = smbc_open(url,O_RDWR | O_CREAT, 0666);
smbc_close(fd);
msg_len = 10;
fd = smbc_open(url, O_RDWR, 0666);
err = smbc_write(fd, message, msg_len);
smbc_close(fd);
free(message);
if ( err < 0 )
err = 1;
else
err = 0;
}
return err;
}
开发者ID:srimalik,项目名称:samba,代码行数:42,代码来源:write_9.c
示例17: xmms_samba_init
/*
* Member functions
*/
static gboolean
xmms_samba_init (xmms_xform_t *xform)
{
xmms_samba_data_t *data;
const gchar *url;
const gchar *metakey;
struct stat st;
gint fd, err;
g_return_val_if_fail (xform, FALSE);
url = xmms_xform_indata_get_str (xform, XMMS_STREAM_TYPE_URL);
g_return_val_if_fail (url, FALSE);
G_LOCK (mutex);
err = smbc_stat (url, &st);
G_UNLOCK (mutex);
if (err < 0) {
xmms_log_error ("%s", strerror (errno));
return FALSE;
}
if (!S_ISREG (st.st_mode)) {
xmms_log_error ("%s is not a regular file.", url);
return FALSE;
}
G_LOCK (mutex);
fd = smbc_open (url, O_RDONLY | O_NONBLOCK, 0);
G_UNLOCK (mutex);
if (fd == -1) {
xmms_log_error ("%s", strerror (errno));
return FALSE;
}
data = g_new0 (xmms_samba_data_t, 1);
data->fd = fd;
xmms_xform_private_data_set (xform, data);
xmms_xform_outdata_type_add (xform, XMMS_STREAM_TYPE_MIMETYPE,
"application/octet-stream",
XMMS_STREAM_TYPE_END);
metakey = XMMS_MEDIALIB_ENTRY_PROPERTY_SIZE;
xmms_xform_metadata_set_int (xform, metakey, st.st_size);
metakey = XMMS_MEDIALIB_ENTRY_PROPERTY_LMOD;
xmms_xform_metadata_set_int (xform, metakey, st.st_mtime);
return TRUE;
}
开发者ID:Malvineous,项目名称:xmms2-devel,代码行数:57,代码来源:samba.c
示例18: main
int main(int argc, char * argv[])
{
int fd;
int ret;
int debug = 0;
int savedErrno;
char buffer[2048];
char path[2048];
char * p;
smbc_init(get_auth_data_fn, debug);
printf("CAUTION: This program will overwrite a file. "
"Press ENTER to continue.");
fgets(buffer, sizeof(buffer), stdin);
for (;;)
{
fprintf(stdout, "\nPath: ");
*path = '\0';
fgets(path, sizeof(path) - 1, stdin);
if (strlen(path) == 0)
{
return 0;
}
p = path + strlen(path) - 1;
if (*p == '\n')
{
*p = '\0';
}
if ((fd = smbc_open(path, O_WRONLY | O_CREAT | O_TRUNC, 0)) < 0)
{
perror("smbc_open");
continue;
}
snprintf(buffer, sizeof(buffer), "%s", "Hello world\n");
ret = smbc_write(fd, buffer, strlen(buffer));
savedErrno = errno;
smbc_close(fd);
if (ret < 0)
{
errno = savedErrno;
perror("write");
}
}
return 0;
}
开发者ID:DanilKorotenko,项目名称:samba,代码行数:54,代码来源:testwrite.c
示例19: main
int main(int argc, char** argv)
{
int err = -1;
int fd1 = 0;
int fd2 = 0;
char url[MAX_BUFF_SIZE];
bzero(g_workgroup,MAX_BUFF_SIZE);
bzero(url,MAX_BUFF_SIZE);
if ( argc == 7 )
{
strncpy( g_workgroup, argv[1], strlen(argv[1]) );
strncpy( g_username, argv[2], strlen(argv[2]) );
strncpy( g_password, argv[3], strlen(argv[3]) );
strncpy( url, argv[4], strlen(argv[4]) );
smbc_init( auth_fn, 0 );
fd1 = smbc_open( url, O_RDWR | O_CREAT, 0666 );
smbc_close( fd1 );
smbc_mkdir( argv[5], 0666 );
smbc_rename( url, argv[6] );
fd1 = smbc_open( url, O_RDWR, 0666 );
fd2 = smbc_open( argv[6], O_RDWR, 0666 );
if ( fd1 == -1 && fd2 != -1 )
err = 0;
else
err = 1;
}
return err;
}
开发者ID:gojdic,项目名称:samba,代码行数:39,代码来源:rename_8.c
示例20: FileOpen
FHANDLE FileOpen( const char *filename, int mode )
{
FHANDLE handle;
int c;
char *ptr;
memset( &handle, -1, sizeof(handle) );
if(!filename)
return handle;
if( (ptr = strchr( filename, ':' )) == NULL ) {
#ifdef _DEBUG
printf("FileOpen : Invalid Path (ptr = NULL)\n");
#endif
return handle;
}
c = ptr - filename;
// file is on cd/dvd
if( !strncmp( filename, "cdfs:", c ) ) {
CD_Init();
CDVD_FlushCache();
handle.fh = fioOpen( filename, mode );
handle.dt = DT_CD;
}
else if( !strncmp( filename, "pfs", 3 ) ) {
handle.fh = fileXioOpen( filename, mode, 0 );
handle.dt = DT_HDD;
}
else if( !strncmp( filename, "mc0:", c ) || !strncmp( filename, "mc1:", c ) ) {
handle.fh = fioOpen( filename, mode );
handle.dt = DT_MC;
}
else if( !strncmp( filename, "mass:", c ) ) {
handle.fh = fioOpen( filename, mode );
handle.dt = DT_USB;
}
else if( !strncmp( filename, "host:", c ) ) {
handle.fh = fioOpen( filename, mode );
handle.dt = DT_HOST;
}
else if( !strncmp( filename, "smb:", c ) ) {
handle.fh = smbc_open( filename, mode, 0666 );
handle.dt = DT_SMB_SHARE;
}
return handle;
}
开发者ID:smiley22,项目名称:myPS2,代码行数:51,代码来源:file.c
注:本文中的smbc_open函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论