Changeset 10075 in vbox
- Timestamp:
- Jul 1, 2008 3:37:13 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/intnet.h
r10038 r10075 391 391 * 392 392 * This is only used for the in-kernel trunk connections. 393 * 394 * @remarks The internal network side is responsible for serializing all calls 395 * to this interface. This is (assumed) to be implemented using a lock 396 * that is only ever taken before a call to this interface. The lock 397 * is referred to as the out-bound trunk port lock. 393 398 */ 394 399 typedef struct INTNETTRUNKIFPORT … … 404 409 * @param pIfPort Pointer to this structure. 405 410 * 406 * @remarks The caller may own any locks .411 * @remarks The caller may own any locks or none at all, we don't care. 407 412 */ 408 413 DECLR0CALLBACKMEMBER(void, pfnRetain,(PINTNETTRUNKIFPORT pIfPort)); … … 416 421 * @param pIfPort Pointer to this structure. 417 422 * 418 * @remarks Where possible, it should be executed without holding any locks419 * unless the caller is certain it is not going to trigger the destructor.423 * @remarks Only the out-bound trunk port lock, unless the caller is certain the 424 * call is not going to cause destruction (wont happen). 420 425 */ 421 426 DECLR0CALLBACKMEMBER(void, pfnRelease,(PINTNETTRUNKIFPORT pIfPort)); … … 429 434 * @param pIfPort Pointer to this structure. 430 435 * 431 * @remarks Called without holding any locks.436 * @remarks Called holding the out-bound trunk port lock. 432 437 */ 433 438 DECLR0CALLBACKMEMBER(void, pfnDisconnectAndRelease,(PINTNETTRUNKIFPORT pIfPort)); … … 453 458 * @param fActive True if the new state is 'active', false if the new state is 'suspended'. 454 459 * 455 * @remarks Called while *not* owning any semaphores. Will not grab anything.460 * @remarks Called holding the out-bound trunk port lock. 456 461 */ 457 462 DECLR0CALLBACKMEMBER(bool, pfnSetActive,(PINTNETTRUNKIFPORT pIfPort, bool fActive)); … … 469 474 * an indefinite wait. 470 475 * 471 * @remarks Called while *not* owning any semaphores. Will not grab anything.476 * @remarks Called holding the out-bound trunk port lock. 472 477 */ 473 478 DECLR0CALLBACKMEMBER(bool, pfnWaitForIdle,(PINTNETTRUNKIFPORT pIfPort, uint32_t cMillies)); … … 482 487 * @param pMac Pointer to the mac address. 483 488 * 484 * @remarks Called while owning the network semaphore.489 * @remarks Called while owning the network and the out-bound trunk port semaphores. 485 490 * 486 491 * @remarks TAP and NAT will compare with their own MAC address and let all their … … 504 509 * @param pIfPort Pointer to this structure. 505 510 * 506 * @remarks Called while owning the network semaphore.511 * @remarks Called while owning the network and the out-bound trunk port semaphores. 507 512 */ 508 513 DECLR0CALLBACKMEMBER(bool, pfnIsPromiscuous,(PINTNETTRUNKIFPORT pIfPort)); … … 523 528 * allocating and copying. 524 529 * 525 * @remarks Called while owning the network semaphore. 526 * (Works on darwin, but may have to be relaxed later on other hosts.) 530 * @remarks Called holding the out-bound trunk port lock. 527 531 * 528 532 * @remarks TAP and NAT will use this interface for all their traffic, see pfnIsHostMac. … … 545 549 * allocating and copying. 546 550 * 547 * @remarks Called while owning the network semaphore. 548 * (Works on darwin, but may have to be relaxed later on other hosts.) 551 * @remarks Called holding the out-bound trunk port lock. 549 552 * 550 553 * @remarks TAP and NAT will call pfnSGRelease and return successfully. … … 567 570 { 568 571 /** 569 * Create an instance for the specfied host interface. 572 * Create an instance for the specfied host interface and connects it 573 * to the internal network trunk port. 570 574 * 571 575 * The initial interface active state is false (suspended). … … 585 589 * on success. 586 590 * 587 * @remarks Called while owning the network semaphore.588 */ 589 DECLR0CALLBACKMEMBER(int, pfnCreate ,(struct INTNETTRUNKNETFLTFACTORY *pIfFactory, const char *pszName,590 PINTNETTRUNKSWPORT pSwitchPort, PINTNETTRUNKIFPORT *ppIfPort));591 * @remarks Called while owning the network and the out-bound trunk semaphores. 592 */ 593 DECLR0CALLBACKMEMBER(int, pfnCreateAndConnect,(struct INTNETTRUNKNETFLTFACTORY *pIfFactory, const char *pszName, 594 PINTNETTRUNKSWPORT pSwitchPort, PINTNETTRUNKIFPORT *ppIfPort)); 591 595 } INTNETTRUNKNETFLTFACTORY; 592 596 /** Pointer to the trunk factory. */
Note:
See TracChangeset
for help on using the changeset viewer.