Changeset 22008 in vbox
- Timestamp:
- Aug 5, 2009 6:52:05 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/HostDrivers/VBoxNetFlt/solaris/VBoxNetFlt-solaris.c
r21530 r22008 23 23 * Header Files * 24 24 *******************************************************************************/ 25 #if defined(DEBUG_ramshankar) && !defined(LOG_ENABLED)26 # define LOG_ENABLED27 #endif28 29 25 #define LOG_GROUP LOG_GROUP_NET_FLT_DRV 30 26 #include <VBox/log.h> … … 339 335 static int vboxNetFltSolarisNotifyReq(queue_t *pQueue); 340 336 341 static int vboxNetFltSolarisUnitDataToRaw(PVBOXNETFLTINS pThis, mblk_t *pMsg, mblk_t **ppRawMsg); 337 /* static int vboxNetFltSolarisUnitDataToRaw(PVBOXNETFLTINS pThis, mblk_t *pMsg, mblk_t **ppRawMsg); */ 342 338 static int vboxNetFltSolarisRawToUnitData(mblk_t *pMsg, mblk_t **ppDlpiMsg); 343 339 … … 350 346 static int vboxNetFltSolarisMBlkToSG(PVBOXNETFLTINS pThis, mblk_t *pMsg, PINTNETSG pSG, unsigned cSegs, uint32_t fSrc); 351 347 static int vboxNetFltSolarisRecv(PVBOXNETFLTINS pThis, vboxnetflt_stream_t *pStream, queue_t *pQueue, mblk_t *pMsg); 352 static mblk_t *vboxNetFltSolarisFixChecksums(mblk_t *pMsg); 353 static void vboxNetFltSolarisAnalyzeMBlk(mblk_t *pMsg); 348 /* static mblk_t *vboxNetFltSolarisFixChecksums(mblk_t *pMsg); */ 349 /* static void vboxNetFltSolarisAnalyzeMBlk(mblk_t *pMsg); */ 354 350 355 351 … … 459 455 } 460 456 461 if (g_VBoxNetFltSolarisMtx != NIL_RTSEMFASTMUTEX) 462 { 463 RTSemFastMutexDestroy(g_VBoxNetFltSolarisMtx); 464 g_VBoxNetFltSolarisMtx = NIL_RTSEMFASTMUTEX; 465 } 466 467 RTR0Term(); 468 469 return mod_remove(&g_VBoxNetFltSolarisModLinkage); 457 rc = mod_remove(&g_VBoxNetFltSolarisModLinkage); 458 if (!rc) 459 { 460 if (g_VBoxNetFltSolarisMtx != NIL_RTSEMFASTMUTEX) 461 { 462 RTSemFastMutexDestroy(g_VBoxNetFltSolarisMtx); 463 g_VBoxNetFltSolarisMtx = NIL_RTSEMFASTMUTEX; 464 } 465 466 RTR0Term(); 467 } 468 469 return rc; 470 470 } 471 471 … … 2531 2531 } 2532 2532 2533 2533 #if 0 2534 2534 /** 2535 2535 * Converts DLPI M_PROTO messages to the raw mode M_DATA format. … … 2627 2627 return VINF_SUCCESS; 2628 2628 } 2629 2629 #endif 2630 2630 2631 2631 /** … … 2899 2899 return VINF_SUCCESS; 2900 2900 2901 mblk_t *pFullMsg = allocb(cbMsg, BPRI_MED); 2902 if (RT_LIKELY(pFullMsg)) 2903 { 2904 mblk_t *pCur = pMsg; 2905 while (pCur) 2906 { 2907 size_t cbBlock = MBLKL(pCur); 2908 if (cbBlock > 0) 2909 { 2910 bcopy(pCur->b_rptr, pFullMsg->b_wptr, cbBlock); 2911 pFullMsg->b_wptr += cbBlock; 2912 } 2913 pCur = pCur->b_cont; 2914 } 2915 2901 mblk_t *pFullMsg = msgpullup(pMsg, -1 /* all data blocks */); 2902 if (pFullMsg) 2903 { 2916 2904 freemsg(pMsg); 2917 2905 pMsg = pFullMsg; 2918 2906 } 2919 2907 else 2908 { 2909 LogRel((DEVICE_NAME ":vboxNetFltSolarisRecv msgpullup failed.\n")); 2920 2910 return VERR_NO_MEMORY; 2911 } 2921 2912 } 2922 2913 … … 2967 2958 } 2968 2959 2969 2960 #if 0 2970 2961 /** 2971 2962 * Finalize the message to be fed into the internal network. … … 3174 3165 } 3175 3166 } 3167 #endif 3176 3168 3177 3169
Note:
See TracChangeset
for help on using the changeset viewer.