亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? wvfileuploadpathlib.c

?? vxwork源代碼
?? C
字號:
/* wvFileUploadPathLib.c -  file destination for event data *//* Copyright 1997 Wind River Systems, Inc. *//*modification history--------------------01f,28aug98,dgp  FCS man page edit01e,08may98,dgp  clean up man pages for WV 2.0 beta release01d,15apr98,cth  removed debug print statement, removed errno set01c,27jan97,cth  added openFlags arg to create, added fileUpPathDefaultPerm01b,18dec97,cth  changed this file's name to from wvFileUploadPath.c to                 wvFileUploadPathLib.c, added fileUploadPathLibInit,		 updated include files01a,21nov97,cth  written, taken from evtSockLib.c*//*DESCRIPTIONThis file contains routines that write events to a file rather thanuploading them to the host using a type of socket connection.  If the fileindicated is a TSFS file, this routine has the same result as uploading to ahost file using other methods, allowing it to replace evtRecv.  The file can becreated anywhere, however, and event data can be kept on the target ifdesired.INCLUDE FILES:SEE ALSO: wvSockUploadPathLib, wvTsfsUploadPathLib*/#include "vxWorks.h"#include "errno.h"#include "ioLib.h"#include "fcntl.h"#include "stdlib.h"#include "logLib.h"#include "private/wvUploadPathP.h"#include "private/wvFileUploadPathLibP.h"typedef struct fileUploadPath  	/* FILE_UPLOAD_DESC */    {    UPLOAD_DESC path;		/* struct must begin with this descriptor */    int		fileFd;		/* private fd for each upload path */    } FILE_UPLOAD_DESC;/* globals */int fileUpPathDefaultPerm = 0644;/********************************************************************************* fileUploadPathLibInit - initialize the wvFileUploadPathLib library (Windview)** This routine initializes the library by pulling in the routines in this * file for use with WindView.  It is called during system configuration * from usrWindview.c.** RETURNS: OK.**/STATUS fileUploadPathLibInit (void)    {    return OK;    }/********************************************************************************* fileUploadPathCreate - create a file for depositing event data (Windview)** This routine opens and initializes a file to receive uploaded events.  * The <openFlags> argument is passed on as the flags argument to the actual * open call so that the caller can specify things like O_TRUNC and O_CREAT.* The file is always opened as O_WRONLY, regardless of the value of <openFlags>.* * RETURNS: The UPLOAD_ID, or NULL if the file can not be opened or * memory for the ID is not available.** SEE ALSO: fileUploadPathClose()*/UPLOAD_ID fileUploadPathCreate     (    char *fname,				/* name of file to create */    int   openFlags				/* O_CREAT, O_TRUNC */    )    {    FILE_UPLOAD_DESC   *pFileUploadDesc;	/* this socket's descriptor */    /* Allocate the upload path's descriptor. */    if ((pFileUploadDesc = (FILE_UPLOAD_DESC *)                           malloc (sizeof (FILE_UPLOAD_DESC))) == NULL)        {        logMsg ("fileUploadPathCreate: failed to allocate upload descriptor.\n",                0, 0, 0, 0, 0, 0);        return (NULL);        }    /* Open the file for writing only, maintaining O_CREAT, O_TRUNC. */    openFlags &= ~O_RDONLY;    openFlags &= ~O_RDWR;    openFlags |=  O_WRONLY;    if ((pFileUploadDesc->fileFd = open (fname, openFlags, 					 fileUpPathDefaultPerm)) == ERROR)        {        logMsg ("fileUploadPathCreate: failed to open file (%s).\n", 		(int) fname, 0, 0, 0, 0, 0);        return (NULL);        }    /* Fill in the file's upload routines so the uploader can access them. */    pFileUploadDesc->path.writeRtn = (FUNCPTR) fileUploadPathWrite;    pFileUploadDesc->path.errorRtn = (FUNCPTR) fileUploadPathClose;    /* Cast the FILE_UPLOAD_DESC to a generic UPLOAD_DESC before returning. */    return ((UPLOAD_ID) pFileUploadDesc);    }/********************************************************************************* fileUploadPathClose - close the event-destination file (WindView)** This routine closes the file associated with <pathId> that is serving* as a destination for event data.** RETURNS: N/A* * SEE ALSO: fileUploadPathCreate()*/void fileUploadPathClose     (    UPLOAD_ID pathId			/* generic upload-path descriptor */    )    {    FILE_UPLOAD_DESC *pFileUploadDesc;	/* pathId cast to see private data */    if (pathId == NULL)        return;    pFileUploadDesc = (FILE_UPLOAD_DESC *) pathId;    close (pFileUploadDesc->fileFd);    free (pFileUploadDesc);    }/********************************************************************************* fileUploadPathWrite - write to the event-destination file (WindView)** This routine writes <size> bytes of data beginning at <pStart> to the file* indicated by <pathId>. ** RETURNS: The number of bytes written, or ERROR.**/int fileUploadPathWrite    (    UPLOAD_ID   pathId,                 /* generic upload-path descriptor */    char *      pStart,                 /* address of data to write */    size_t      size                    /* number of bytes of data at pStart */    )    {    if (pathId == NULL)        return (ERROR);    return (write (((FILE_UPLOAD_DESC *) pathId)->fileFd, pStart, size));    }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品粉嫩aⅴ一区二区三区四区| 欧美久久一区二区| 狠狠色综合日日| 美女视频一区二区| 蓝色福利精品导航| 国内精品久久久久影院薰衣草| 视频一区视频二区在线观看| 午夜激情一区二区三区| 日韩激情中文字幕| 久久99久久精品| 国产精品888| va亚洲va日韩不卡在线观看| 日本韩国欧美在线| 欧美日韩亚洲综合一区二区三区| 777a∨成人精品桃花网| 日韩欧美中文一区二区| 国产三级欧美三级日产三级99| 精品久久久久久无| 一区视频在线播放| 亚洲一区二区三区自拍| 免费人成在线不卡| 狠狠色狠狠色综合| 91免费版pro下载短视频| 欧美日韩在线综合| 精品国产91洋老外米糕| 中文字幕一区二区三区四区不卡 | 91精品久久久久久久99蜜桃| 在线成人免费观看| 精品久久久久久久久久久久包黑料 | 国产欧美日韩亚州综合| 亚洲视频香蕉人妖| 美女视频一区二区| 91成人网在线| 337p日本欧洲亚洲大胆精品 | 图片区日韩欧美亚洲| 麻豆91在线观看| 成人蜜臀av电影| 欧美精品v国产精品v日韩精品 | 日韩欧美一级二级三级| 中文字幕 久热精品 视频在线| 一区二区三区精品| 极品销魂美女一区二区三区| av电影天堂一区二区在线| 欧美本精品男人aⅴ天堂| 一区二区三区在线观看视频| 国产一区二区免费在线| 欧美色图免费看| 久久久五月婷婷| 调教+趴+乳夹+国产+精品| 成人黄色av网站在线| 精品国产一区二区三区久久影院| 亚洲免费毛片网站| 懂色中文一区二区在线播放| 日韩三级免费观看| 丝袜亚洲另类欧美| 在线免费观看日本欧美| 久久久精品人体av艺术| 日韩电影网1区2区| 在线观看日韩精品| 国产精品成人午夜| 国产精品18久久久久久久久 | 欧美亚洲一区三区| 国产精品国产三级国产普通话蜜臀 | 极品瑜伽女神91| 日韩欧美一级二级| 日韩av一区二区在线影视| 欧美丝袜第三区| 亚洲最色的网站| 色先锋aa成人| 亚洲美女电影在线| 99re这里只有精品6| 国产精品久久毛片| 91在线观看地址| 亚洲男人的天堂在线aⅴ视频| 成人伦理片在线| 国产精品福利一区| 成人免费视频播放| 亚洲品质自拍视频| 欧美亚洲精品一区| 日韩av一二三| 欧美成人a视频| 国产成人av一区二区三区在线观看| 久久综合九色综合久久久精品综合| 久久电影国产免费久久电影| xf在线a精品一区二区视频网站| 久久精品国产成人一区二区三区 | 69堂亚洲精品首页| 奇米一区二区三区| 久久影院午夜论| 成人妖精视频yjsp地址| 亚洲欧美日本韩国| 欧美日韩国产小视频| 日本不卡在线视频| 国产亚洲人成网站| 91麻豆国产福利精品| 亚洲国产精品久久久男人的天堂 | 国产精品免费久久| 91老师片黄在线观看| 亚洲成人高清在线| 欧美精品一区二区三区很污很色的 | 欧美综合久久久| 五月天激情综合| 国产亚洲女人久久久久毛片| 99精品热视频| 蜜臀av性久久久久蜜臀aⅴ流畅| 久久亚洲春色中文字幕久久久| 国产精品一区二区x88av| 一级特黄大欧美久久久| 日韩欧美一二三| 色素色在线综合| 激情五月婷婷综合| 亚洲乱码中文字幕| 久久男人中文字幕资源站| 在线观看日韩电影| 国产成人av电影在线播放| 亚洲激情欧美激情| 久久色在线观看| 欧美日韩精品久久久| 成人中文字幕合集| 日韩精品1区2区3区| 亚洲日本va在线观看| 日韩精品在线看片z| 在线看国产一区二区| 精品一区二区三区久久久| 亚洲日本va午夜在线电影| 亚洲精品在线三区| 欧美日本一区二区| 欧洲色大大久久| 成人18视频日本| 国产福利精品导航| 国内成人自拍视频| 全部av―极品视觉盛宴亚洲| 一区二区不卡在线播放| 中文字幕一区免费在线观看| 色婷婷av一区二区三区软件| 国产69精品久久777的优势| 国内偷窥港台综合视频在线播放| 一区二区三区在线视频观看| 亚洲国产精品av| 国产偷v国产偷v亚洲高清| 日韩欧美国产小视频| 欧美精品在线一区二区三区| 日本精品一区二区三区四区的功能| 国产成人av一区二区三区在线| 日本91福利区| 蜜桃av一区二区| 日韩精品视频网站| 亚洲一区自拍偷拍| 亚洲综合999| 亚洲午夜免费电影| 亚洲综合一二区| 亚洲精品菠萝久久久久久久| 亚洲视频小说图片| 一区二区三区在线视频观看58| 一区二区三区四区在线免费观看| 自拍视频在线观看一区二区| 国产精品乱人伦| 亚洲品质自拍视频网站| 夜夜嗨av一区二区三区中文字幕| 亚洲精品第1页| 午夜成人免费电影| 青青草国产精品亚洲专区无| 六月婷婷色综合| 国产经典欧美精品| 99re亚洲国产精品| 在线观看免费成人| 欧美精品电影在线播放| 日韩三级视频在线看| 久久久久久久久久久久久夜| 国产欧美日韩精品a在线观看| 国产精品久久精品日日| 亚洲在线视频网站| 麻豆精品一区二区综合av| 国模套图日韩精品一区二区| 成人天堂资源www在线| 99久久国产综合色|国产精品| 欧美性色黄大片| 精品国产麻豆免费人成网站| 国产精品―色哟哟| 五月婷婷久久丁香| 国产成人午夜精品影院观看视频| av电影一区二区| 欧美一卡2卡3卡4卡| 日本一区二区视频在线| 夜夜嗨av一区二区三区| 精品在线播放免费| 在线精品亚洲一区二区不卡| 欧美精品一区二区三区一线天视频 | 国产三级精品三级在线专区| 亚洲免费在线视频一区 二区| 日本少妇一区二区| 91在线porny国产在线看| 日韩免费看的电影| 亚洲日本韩国一区| 极品美女销魂一区二区三区| 在线免费不卡电影| 欧美激情一区二区三区在线| 日本欧美一区二区三区| 色婷婷综合久久久久中文| 精品国产区一区|