libnatpmp.

محاولة لإجراء تنفيذ محمول ومتوافق تماما لبروتوكول جانب العميل
التحميل الان

libnatpmp. الترتيب والملخص

الإعلانات

  • Rating:
  • رخصة:
  • BSD License
  • السعر:
  • FREE
  • اسم الناشر:
  • Thomas Bernard
  • موقع ويب الناشر:
  • http://miniupnp.free.fr/libnatpmp.html

libnatpmp. العلامات


libnatpmp. وصف

محاولة لإجراء تنفيذ محمول ومتوافق تماما لبروتوكول جانب العميل Libnatpmp هي محاولة لإجراء تنفيذ محمول ومتوافق تماما لبروتوكول جانب العميل. يعتمد على مآخذ غير حظر وجميع مكالمات API غير متزامنة. لذلك من السهل للغاية إدماج مكتبة Libnatpmp دمج رمز NAT-PMP إلى أي كود مدفوع الحدث. NAT-PMP هو المتزامن المباشر لمواصفات UPNP IGD. إنه يوفر وسيلة للقيام اجتياز NAT. إنها جزء من مواصفات بروتوكول BONJOUR. يمكنك الحصول على وصف هذا البروتوكول البسيط هنا أو عن طريق قراءة المسودة. في الوقت الحالي، يتم دعمها بشكل أساسي بواسطة Apple Software and Wardware.use يجب أن تكون libnatpmp في برامجك سهلة الاستخدام للغاية في استخدام libnatpmp في أي برنامج C / C ++. يتم وصف جميع API في ملف Natpmp.h. أولا وقبل كل شيء، يجب تخصيص متغير من النوع natpmp_t ويجب استدعاء internatpmp (). sendpublicaddressrequest () أو sendnewportmappingrequest () يمكن استدعاؤها. لكل طلب مرسل، يجب أن يتم استدعاء ReadNatPmPrespone () طالما أنه يعود natpmp_tryagain. إذا كنت تنتظر مأخذ التوصيل (حقل S في كائن NATPMP_T) جاهزا للقراءة باستخدام مكالمات النظام مثل تحديد () أو استطلاع للرأي ()، يمكنك استخدام GetNATPMPRECTTimeOut () من أجل معرفة كم من الوقت للانتظار قبل استدعاء ReadnatPmpresponse () على أي حال. لتحرير جميع الموارد المستخدمة، يمكن استدعاء ClosenATPMP (). sampleds يرجى التحقق من جميع رموز الإرجاع في ملف natpmp.h. Sampplethis بسيط جدا عينة بسيطة جدا فقط اسأل عن إعادة توجيه وإعادة عندما يتم العمل. إعادة توجيه Void (UINT16_T PROPPORTPORT، UINT16_T PublicPort) {Int R؛ NATPMP_T NATPMP؛ استجابة Natpmpresp_t؛ initnatpmp (Natpmp)؛ sendnewportmappingrequestrequest هل {fd_set fds؛ مهلة بنية timeval؛ FD_ZERO (FDS)؛ fd_set (natpmp.s، fds)؛ getnatpmprequesttimeout (Natpmp، مهلة)؛ حدد (fd_setsize، FDS، NULL، NULL، مهلة)؛ r = readnatpmpresponse (natpmp، استجابة)؛ } بينما (ص == Natpmp_tryagain)؛ PrintF ("المنفذ العام المعين Hu إلى LocalPort HU LIFTIME"، Response.newportmaping.mpedpublicport، Response.newportmaping.privateport، Response.newportmaping.lifetime)؛ ClosenATPMP (NATPMP)؛ } كما تم حذفه عمدا. يرجى التحقق من جميع رموز الإرجاع في ملف natpmp.h.simple samplethis عينة بسيطة جدا فقط اسأل عن إعادة التوجيه والعودة عند الانتهاء من الوظيفة. إعادة توجيه Void (UINT16_T PROPPORTPORT، UINT16_T PublicPort) {Int R؛ NATPMP_T NATPMP؛ استجابة Natpmpresp_t؛ initnatpmp (Natpmp)؛ sendnewportmappingrequestrequest هل {fd_set fds؛ مهلة بنية timeval؛ FD_ZERO (FDS)؛ fd_set (natpmp.s، fds)؛ getnatpmprequesttimeout (Natpmp، مهلة)؛ حدد (fd_setsize، FDS، NULL، NULL، مهلة)؛ r = readnatpmpresponse (natpmp، استجابة)؛ } بينما (ص == Natpmp_tryagain)؛ PrintF ("المنفذ العام المعين Hu إلى LocalPort HU LIFTIME"، Response.newportmaping.mpedpublicport، Response.newportmaping.privateport، Response.newportmaping.lifetime)؛ ClosenATPMP (NATPMP)؛ } هناك عينة أكثر تعقيدا يمكن أن تخيل مرحلة التينيت من برامج P2P. خلال هذه المرحلة، يحاول البرنامج الحصول على عنوان IP العام وإضافة تعيين منفذ. في نهاية هذه العملية، ستكون NatpMpstate إما SDONE أو SERROR. {natpmp_t natpmp؛ استجابة Natpmpresp_t؛ Enum {sinit = 0، ssendpub، srecvpub، ssendmap، srecvmap، sdone، serror = 1000} natpmpstate = sinit؛ int r؛ إذا (initnatpmp (Natpmp)


libnatpmp. برامج ذات صلة

CClib.

CCLIB هي مكتبة بيثون لتحليل وتفسير نتائج حزم الكيمياء الحاسوبية. ...

151

تحميل

SDL_Sound.

sdl_sound هي مكتبة تعالج فك تشفير العديد من تنسيقات ملفات الصوت الشائعة، مثل .wav و .mp3. ...

163

تحميل