diff --git a/PmpMyApp.xcodeproj/tyler.mode1 b/PmpMyApp.xcodeproj/tyler.mode1 index aba4310..c354c81 100644 --- a/PmpMyApp.xcodeproj/tyler.mode1 +++ b/PmpMyApp.xcodeproj/tyler.mode1 @@ -320,16 +320,16 @@ _historyCapacity 0 bookmark - 2F9021410B7BD05A004FF42C + 2F9021570B7BE0FB004FF42C history 2F5A489C0B7565AE0052B0C1 2F5A489D0B7565AE0052B0C1 2F901EC10B7AED84004FF42C 2F901EF70B7AEED5004FF42C - 2F9021260B7BCD94004FF42C - 2F90213A0B7BCF9E004FF42C - 2F90213B0B7BCF9E004FF42C + 2F9021510B7BE0FB004FF42C + 2F9021520B7BE0FB004FF42C + 2F9021530B7BE0FB004FF42C prevStack @@ -340,13 +340,9 @@ 2F901EC50B7AED84004FF42C 2F901ED80B7AEDBC004FF42C 2F901EE10B7AEE09004FF42C - 2F9020F40B7BC77F004FF42C - 2F9020F50B7BC77F004FF42C - 2F9020F60B7BC77F004FF42C - 2F9021280B7BCD94004FF42C - 2F9021290B7BCD94004FF42C - 2F90213C0B7BCF9E004FF42C - 2F90213D0B7BCF9E004FF42C + 2F9021540B7BE0FB004FF42C + 2F9021550B7BE0FB004FF42C + 2F9021560B7BE0FB004FF42C SplitCount @@ -404,9 +400,9 @@ TableOfContents - 2F9020F80B7BC77F004FF42C + 2F9021480B7BD19C004FF42C 1CE0B1FE06471DED0097A5F4 - 2F9020F90B7BC77F004FF42C + 2F9021490B7BD19C004FF42C 1CE0B20306471E060097A5F4 1CE0B20506471E060097A5F4 @@ -540,14 +536,9 @@ 5 WindowOrderList - 2F9020FA0B7BC77F004FF42C - 2F9020FB0B7BC77F004FF42C - 2F5A48CE0B756D650052B0C1 - 1CD10A99069EF8BA00B06720 - 2F9020DB0B7BBFD1004FF42C + /Software/Subversion/trunk/PmpMyApp/PmpMyApp.xcodeproj 2F5A48970B7565A60052B0C1 1C0AD2B3069F1EA900FABCE6 - /Software/Subversion/trunk/PmpMyApp/PmpMyApp.xcodeproj WindowString 4 104 1072 924 0 0 1680 1028 @@ -593,7 +584,7 @@ ContentConfiguration PBXBuildLogShowsTranscriptDefaultKey - {{0, 189}, {620, 281}} + {{0, 118}, {620, 352}} PBXProjectModuleGUID XCMainBuildResultsModuleGUID PBXProjectModuleLabel @@ -631,7 +622,7 @@ TableOfContents 2F5A48970B7565A60052B0C1 - 2F9020D40B7BBFD1004FF42C + 2F9021580B7BE0FB004FF42C 1CD0528F0623707200166675 XCMainBuildResultsModuleGUID @@ -1001,9 +992,9 @@ TableOfContents 1C0AD2B3069F1EA900FABCE6 - 2F9020DD0B7BBFD1004FF42C + 2F90214A0B7BD19C004FF42C 1CD0528B0623707200166675 - 2F9020DE0B7BBFD1004FF42C + 2F90214B0B7BD19C004FF42C ToolbarConfiguration xcode.toolbar.config.run diff --git a/PmpMyApp.xcodeproj/tyler.pbxuser b/PmpMyApp.xcodeproj/tyler.pbxuser index 942326c..50fe383 100644 --- a/PmpMyApp.xcodeproj/tyler.pbxuser +++ b/PmpMyApp.xcodeproj/tyler.pbxuser @@ -67,32 +67,40 @@ PBXFileDataSource_Warnings_ColumnID, ); }; - PBXPerProjectTemplateStateSaveDate = 192659396; - PBXWorkspaceStateSaveDate = 192659396; + PBXPerProjectTemplateStateSaveDate = 192663959; + PBXWorkspaceStateSaveDate = 192663959; }; perUserProjectItems = { - 2F5A489C0B7565AE0052B0C1 /* PBXTextBookmark */ = 2F5A489C0B7565AE0052B0C1 /* PBXTextBookmark */; - 2F5A489D0B7565AE0052B0C1 /* PBXTextBookmark */ = 2F5A489D0B7565AE0052B0C1 /* PBXTextBookmark */; - 2F5A48A00B7565AE0052B0C1 /* PBXTextBookmark */ = 2F5A48A00B7565AE0052B0C1 /* PBXTextBookmark */; - 2F5A48A10B7565AE0052B0C1 /* PBXTextBookmark */ = 2F5A48A10B7565AE0052B0C1 /* PBXTextBookmark */; - 2F5A48A20B7565AE0052B0C1 /* PBXTextBookmark */ = 2F5A48A20B7565AE0052B0C1 /* PBXTextBookmark */; - 2F5A49370B7575010052B0C1 /* PBXTextBookmark */ = 2F5A49370B7575010052B0C1 /* PBXTextBookmark */; - 2F901EC10B7AED84004FF42C /* PBXTextBookmark */ = 2F901EC10B7AED84004FF42C /* PBXTextBookmark */; - 2F901EC50B7AED84004FF42C /* PBXTextBookmark */ = 2F901EC50B7AED84004FF42C /* PBXTextBookmark */; - 2F901ED80B7AEDBC004FF42C /* PBXTextBookmark */ = 2F901ED80B7AEDBC004FF42C /* PBXTextBookmark */; - 2F901EE10B7AEE09004FF42C /* PBXTextBookmark */ = 2F901EE10B7AEE09004FF42C /* PBXTextBookmark */; - 2F901EF70B7AEED5004FF42C /* PBXTextBookmark */ = 2F901EF70B7AEED5004FF42C /* PBXTextBookmark */; - 2F9020F40B7BC77F004FF42C /* PBXTextBookmark */ = 2F9020F40B7BC77F004FF42C /* PBXTextBookmark */; - 2F9020F50B7BC77F004FF42C /* PBXTextBookmark */ = 2F9020F50B7BC77F004FF42C /* PBXTextBookmark */; - 2F9020F60B7BC77F004FF42C /* PBXTextBookmark */ = 2F9020F60B7BC77F004FF42C /* PBXTextBookmark */; - 2F9021260B7BCD94004FF42C /* PBXTextBookmark */ = 2F9021260B7BCD94004FF42C /* PBXTextBookmark */; - 2F9021280B7BCD94004FF42C /* PBXTextBookmark */ = 2F9021280B7BCD94004FF42C /* PBXTextBookmark */; - 2F9021290B7BCD94004FF42C /* PBXTextBookmark */ = 2F9021290B7BCD94004FF42C /* PBXTextBookmark */; - 2F90213A0B7BCF9E004FF42C /* PBXTextBookmark */ = 2F90213A0B7BCF9E004FF42C /* PBXTextBookmark */; - 2F90213B0B7BCF9E004FF42C /* PBXTextBookmark */ = 2F90213B0B7BCF9E004FF42C /* PBXTextBookmark */; - 2F90213C0B7BCF9E004FF42C /* PBXTextBookmark */ = 2F90213C0B7BCF9E004FF42C /* PBXTextBookmark */; - 2F90213D0B7BCF9E004FF42C /* PBXTextBookmark */ = 2F90213D0B7BCF9E004FF42C /* PBXTextBookmark */; - 2F9021410B7BD05A004FF42C /* PBXTextBookmark */ = 2F9021410B7BD05A004FF42C /* PBXTextBookmark */; + 2F5A489C0B7565AE0052B0C1 = 2F5A489C0B7565AE0052B0C1 /* PBXTextBookmark */; + 2F5A489D0B7565AE0052B0C1 = 2F5A489D0B7565AE0052B0C1 /* PBXTextBookmark */; + 2F5A48A00B7565AE0052B0C1 = 2F5A48A00B7565AE0052B0C1 /* PBXTextBookmark */; + 2F5A48A10B7565AE0052B0C1 = 2F5A48A10B7565AE0052B0C1 /* PBXTextBookmark */; + 2F5A48A20B7565AE0052B0C1 = 2F5A48A20B7565AE0052B0C1 /* PBXTextBookmark */; + 2F5A49370B7575010052B0C1 = 2F5A49370B7575010052B0C1 /* PBXTextBookmark */; + 2F901EC10B7AED84004FF42C = 2F901EC10B7AED84004FF42C /* PBXTextBookmark */; + 2F901EC50B7AED84004FF42C = 2F901EC50B7AED84004FF42C /* PBXTextBookmark */; + 2F901ED80B7AEDBC004FF42C = 2F901ED80B7AEDBC004FF42C /* PBXTextBookmark */; + 2F901EE10B7AEE09004FF42C = 2F901EE10B7AEE09004FF42C /* PBXTextBookmark */; + 2F901EF70B7AEED5004FF42C = 2F901EF70B7AEED5004FF42C /* PBXTextBookmark */; + 2F9020F40B7BC77F004FF42C = 2F9020F40B7BC77F004FF42C /* PBXTextBookmark */; + 2F9020F50B7BC77F004FF42C = 2F9020F50B7BC77F004FF42C /* PBXTextBookmark */; + 2F9020F60B7BC77F004FF42C = 2F9020F60B7BC77F004FF42C /* PBXTextBookmark */; + 2F9021260B7BCD94004FF42C = 2F9021260B7BCD94004FF42C /* PBXTextBookmark */; + 2F9021280B7BCD94004FF42C = 2F9021280B7BCD94004FF42C /* PBXTextBookmark */; + 2F9021290B7BCD94004FF42C = 2F9021290B7BCD94004FF42C /* PBXTextBookmark */; + 2F90213A0B7BCF9E004FF42C = 2F90213A0B7BCF9E004FF42C /* PBXTextBookmark */; + 2F90213B0B7BCF9E004FF42C = 2F90213B0B7BCF9E004FF42C /* PBXTextBookmark */; + 2F90213C0B7BCF9E004FF42C = 2F90213C0B7BCF9E004FF42C /* PBXTextBookmark */; + 2F90213D0B7BCF9E004FF42C = 2F90213D0B7BCF9E004FF42C /* PBXTextBookmark */; + 2F9021410B7BD05A004FF42C = 2F9021410B7BD05A004FF42C /* PBXTextBookmark */; + 2F9021470B7BD19C004FF42C /* PBXTextBookmark */ = 2F9021470B7BD19C004FF42C /* PBXTextBookmark */; + 2F9021510B7BE0FB004FF42C /* PBXTextBookmark */ = 2F9021510B7BE0FB004FF42C /* PBXTextBookmark */; + 2F9021520B7BE0FB004FF42C /* PBXTextBookmark */ = 2F9021520B7BE0FB004FF42C /* PBXTextBookmark */; + 2F9021530B7BE0FB004FF42C /* PBXTextBookmark */ = 2F9021530B7BE0FB004FF42C /* PBXTextBookmark */; + 2F9021540B7BE0FB004FF42C /* PBXTextBookmark */ = 2F9021540B7BE0FB004FF42C /* PBXTextBookmark */; + 2F9021550B7BE0FB004FF42C /* PBXTextBookmark */ = 2F9021550B7BE0FB004FF42C /* PBXTextBookmark */; + 2F9021560B7BE0FB004FF42C /* PBXTextBookmark */ = 2F9021560B7BE0FB004FF42C /* PBXTextBookmark */; + 2F9021570B7BE0FB004FF42C /* PBXTextBookmark */ = 2F9021570B7BE0FB004FF42C /* PBXTextBookmark */; }; sourceControlManager = 2F5A48590B75586F0052B0C1 /* Source Control */; userBuildSettings = { @@ -144,8 +152,8 @@ 2F5A48710B75598F0052B0C1 /* pmpmapper.c */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {817, 2212}}"; - sepNavSelRange = "{4316, 0}"; - sepNavVisRect = "{{0, 0}, {817, 846}}"; + sepNavSelRange = "{1491, 0}"; + sepNavVisRect = "{{0, 6}, {817, 846}}"; }; }; 2F5A48890B7565810052B0C1 /* PMPMapper */ = { @@ -243,7 +251,7 @@ fRef = 2F5A48710B75598F0052B0C1 /* pmpmapper.c */; name = "PMPMapper.c: 29"; rLen = 0; - rLoc = 4002; + rLoc = 4016; rType = 0; vrLen = 951; vrLoc = 0; @@ -292,8 +300,8 @@ 2F901ECF0B7AEDB5004FF42C /* route.c */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {817, 1764}}"; - sepNavSelRange = "{157, 0}"; - sepNavVisRect = "{{0, 918}, {817, 846}}"; + sepNavSelRange = "{1177, 0}"; + sepNavVisRect = "{{0, 0}, {817, 846}}"; }; }; 2F901ED80B7AEDBC004FF42C /* PBXTextBookmark */ = { @@ -371,7 +379,7 @@ fRef = 2F5A48710B75598F0052B0C1 /* pmpmapper.c */; name = "pmpmapper.c: 53"; rLen = 0; - rLoc = 1477; + rLoc = 1491; rType = 0; vrLen = 2132; vrLoc = 929; @@ -401,7 +409,7 @@ fRef = 2F5A48710B75598F0052B0C1 /* pmpmapper.c */; name = "pmpmapper.c: 50"; rLen = 0; - rLoc = 1384; + rLoc = 1390; rType = 0; vrLen = 1337; vrLoc = 3052; @@ -411,7 +419,7 @@ fRef = 2F5A48710B75598F0052B0C1 /* pmpmapper.c */; name = "pmpmapper.c: 50"; rLen = 0; - rLoc = 1384; + rLoc = 1390; rType = 0; vrLen = 1337; vrLoc = 3052; @@ -431,11 +439,91 @@ fRef = 2F5A48710B75598F0052B0C1 /* pmpmapper.c */; name = "pmpmapper.c: printf"; rLen = 0; - rLoc = 4316; + rLoc = 4330; rType = 0; vrLen = 1766; vrLoc = 0; }; + 2F9021470B7BD19C004FF42C /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 2F5A48710B75598F0052B0C1 /* pmpmapper.c */; + name = "pmpmapper.c: 18"; + rLen = 0; + rLoc = 425; + rType = 0; + vrLen = 1766; + vrLoc = 0; + }; + 2F9021510B7BE0FB004FF42C /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 2F901ECF0B7AEDB5004FF42C /* route.c */; + name = "route.c: 61"; + rLen = 0; + rLoc = 1177; + rType = 0; + vrLen = 1178; + vrLoc = 0; + }; + 2F9021520B7BE0FB004FF42C /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 2F5A48700B75598F0052B0C1 /* pmpmapper.h */; + name = "pmpmapper.h: PMP_TIMEOUT"; + rLen = 0; + rLoc = 529; + rType = 0; + vrLen = 867; + vrLoc = 0; + }; + 2F9021530B7BE0FB004FF42C /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 2F5A48710B75598F0052B0C1 /* pmpmapper.c */; + name = r; + rLen = 1; + rLoc = 2055; + rType = 0; + vrLen = 2025; + vrLoc = 1394; + }; + 2F9021540B7BE0FB004FF42C /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 2F5A48710B75598F0052B0C1 /* pmpmapper.c */; + name = r; + rLen = 1; + rLoc = 2055; + rType = 0; + vrLen = 2025; + vrLoc = 1394; + }; + 2F9021550B7BE0FB004FF42C /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 2F901ECF0B7AEDB5004FF42C /* route.c */; + name = "route.c: 61"; + rLen = 0; + rLoc = 1177; + rType = 0; + vrLen = 1178; + vrLoc = 0; + }; + 2F9021560B7BE0FB004FF42C /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 2F5A48700B75598F0052B0C1 /* pmpmapper.h */; + name = "pmpmapper.h: PMP_TIMEOUT"; + rLen = 0; + rLoc = 529; + rType = 0; + vrLen = 867; + vrLoc = 0; + }; + 2F9021570B7BE0FB004FF42C /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 2F5A48710B75598F0052B0C1 /* pmpmapper.c */; + name = "pmpmapper.c: 53"; + rLen = 0; + rLoc = 1491; + rType = 0; + vrLen = 1780; + vrLoc = 0; + }; 8D1107260486CEB800E47090 /* PmpMyApp */ = { activeExec = 0; executables = ( diff --git a/source/pmpmapper.c b/source/pmpmapper.c index 28b3cb2..a211b4d 100644 --- a/source/pmpmapper.c +++ b/source/pmpmapper.c @@ -47,10 +47,10 @@ struct sockaddr_in *pmp_get_public(struct sockaddr_in *gateway) req_timeout.tv_usec = PMP_TIMEOUT; recvsockaddr->sin_family = AF_INET; - recvsockaddr->sin_port = PMP_PORT; + recvsockaddr->sin_port = htons(PMP_PORT); recvsockaddr->sin_addr.s_addr = htonl(INADDR_ANY); - gateway->sin_port = PMP_PORT; // Default port for NAT-PMP is 5351 + gateway->sin_port = htons(PMP_PORT); // Default port for NAT-PMP is 5351 sendfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP); recvfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);