chrislim2888 / IP2Location-C-Library

IP2Location C library enables the user to find the country, region, city, coordinates, zip code, time zone, ISP, domain name, connection type, area code, weather station code, weather station name, mobile, usage types, etc that any IP address or hostname originates from.
https://www.ip2location.com
MIT License
61 stars 30 forks source link

pvs-studio-analyzer #34

Closed denji closed 4 years ago

denji commented 4 years ago
$ wget https://files.viva64.com/pvs-studio-7.09.41421.64-amd64.deb
$ dpkg -i pvs-studio-7.09.41421.64-amd64.deb
$ pvs-studio-analyzer credentials (email) (license) # free opensource https://www.viva64.com/en/b/0600/

$ cd IP2Location-C-Library
$ make clean
$ bear make
$ ls compile_commands.json

#     -a [MODE], --analysis-mode [MODE]
#        MODE defines the type of warnings:
#        1 - diagnostics, allowing to detect specific errors, related to the development of 64-bit applications and migrating the code from a 32-bit platform to a 64-bit one.
#        2 - reserved;
#        4 - General Analysis diagnostics. This is the main set of diagnostic rules
#        8 - Diagnostics of micro-optimization. These are tips concerning the improvement of efficiency and safety of the code.
#        16 - highly specialized diagnostics, developed by user requests. By default, this set of diagnostics is disabled.
#        32 - a set of diagnostics, developed according to the MISRA standard (Motor Industry Software Reliability Association). This set of diagnostics is disabled by default.
$ pvs-studio-analyzer analyze -a "$((1|2|4|8|16|32))" -o ip2loc.proj -j4
$ plog-converter -a 'GA;OP;64;CS;MISRA' -t errorfile -o ip2loc.log ip2loc.proj

$ cat ip2loc.log
www.viva64.com/en/w:1:1: error: Help: The documentation for all analyzer warnings is available here: https://www.viva64.com/en/w/.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.h:26:1: note: V2514 Unions should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.h:107:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:126:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:127:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:128:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:129:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:130:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:133:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:134:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:135:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:136:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:137:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:138:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:139:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:140:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:141:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:142:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:143:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:145:1: note: V122 Memsize type is used in the struct/class.
IP2Location-C-Library/libIP2Location/IP2Location.h:177:1: note: V126 Be advised that the size of the type 'long' varies between LLP64/LP64 data models.
IP2Location-C-Library/test/test-IP2Location.c:21:1: warning: V2532 String literal should not be assigned to object unless it has type of pointer to const-qualified char.
IP2Location-C-Library/test/test-IP2Location.c:40:1: note: V575 The potential null pointer is passed into 'fscanf' function. Inspect the first argument.
IP2Location-C-Library/test/test-IP2Location.c:40:1: warning: V576 Incorrect format. Consider checking the third actual argument of the 'fscanf' function. It's dangerous to use string specifier without width specification. Buffer overflow is possible.
IP2Location-C-Library/test/test-IP2Location.c:41:1: warning: V576 Incorrect format. Consider checking the third actual argument of the 'fscanf' function. It's dangerous to use string specifier without width specification. Buffer overflow is possible.
IP2Location-C-Library/test/test-IP2Location.c:76:1: warning: V2532 String literal should not be assigned to object unless it has type of pointer to const-qualified char.
IP2Location-C-Library/test/test-IP2Location.c:91:1: warning: V576 Incorrect format. Consider checking the third actual argument of the 'fscanf' function. It's dangerous to use string specifier without width specification. Buffer overflow is possible.
IP2Location-C-Library/test/test-IP2Location.c:92:1: warning: V576 Incorrect format. Consider checking the third actual argument of the 'fscanf' function. It's dangerous to use string specifier without width specification. Buffer overflow is possible.
IP2Location-C-Library/test/test-IP2Location.c:11:1: note: V2506 A function should have a single point of exit at the end.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:60:1: warning: V2511 The function with the 'malloc' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:60:1: note: V2572 The value of the 'statbuf.st_size + 1' expression should not be converted from the essential 'signed' type to the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:60:1: note: V2561 The result of an assignment expression should not be used.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:68:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:50:1: note: V2506 A function should have a single point of exit at the end.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:80:1: warning: V2523 All integer constants of unsigned type should have 'u' or 'U' suffix.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:80:1: error: V204 Explicit conversion from 32-bit integer type to pointer type: (void *) 4194500608
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:80:1: note: V566 The integer constant is converted to pointer. Possibly an error or a bad coding style: (void *) 4194500608
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:84:1: warning: V2501 Octal constant '02' should not be used.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:84:1: warning: V2501 Octal constant '0100' should not be used.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:84:1: warning: V2544 The left and right operands of the '|' operator should not have essential 'signed' and 'signed' types respectively. Consider inspecting operands: left - '02', right - '0100'
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:84:1: warning: V2501 Octal constant '0200' should not be used.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:84:1: warning: V2544 The left and right operands of the '|' operator should not have essential 'signed' and 'signed' types respectively. Consider inspecting operands: left - '02 | 0100', right - '0200'
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:84:1: warning: V2501 Octal constant '0777' should not be used.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:84:1: note: V2561 The result of an assignment expression should not be used.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:88:1: warning: V2501 Octal constant '02' should not be used.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:88:1: warning: V2501 Octal constant '0777' should not be used.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:88:1: note: V2561 The result of an assignment expression should not be used.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:88:1: warning: V2516 The 'if' ... 'else if' construct should be terminated with an 'else' statement.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:96:1: warning: V2507 The body of the 'if' statement should be enclosed in braces.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:102:1: note: V2572 The value of the 'statbuf.st_size + 1' expression should not be converted to the narrower essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:110:1: warning: V2544 The left and right operands of the '|' operator should not have essential 'signed' and 'signed' types respectively. Consider inspecting operands: left - '0x1', right - '0x2'
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:114:1: warning: V2507 The body of the 'if' statement should be enclosed in braces.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:76:1: note: V2506 A function should have a single point of exit at the end.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:195:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:195:1: warning: V2507 The body of the 'if' statement should be enclosed in braces.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:192:1: note: V2506 A function should have a single point of exit at the end.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:208:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:207:1: note: V809 Verifying that a pointer value is not NULL is not required. The 'if (cache_shm_ptr != NULL)' check can be removed.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:207:1: warning: V2507 The body of the 'if' statement should be enclosed in braces.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:210:1: warning: V2516 The 'if' ... 'else if' construct should be terminated with an 'else' statement.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:229:1: warning: V2507 The body of the 'if' statement should be enclosed in braces.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:215:1: error: V595 The 'filehandle' pointer was utilized before it was verified against nullptr. Check lines: 215, 229.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:253:1: note: V2528 The comma operator should not be used.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:255:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:266:1: note: V2571 Pointer to void should not be converted to a pointer to object. Consider inspecting the expression: '* cache_shm = cache_shm_ptr'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:272:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:272:1: warning: V106 Implicit type conversion second argument 'position - 1' of function 'fseek' to memsize type.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:274:1: warning: V2568 Both operands of the '==' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:276:1: warning: V2568 Both operands of the '==' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:278:1: warning: V2568 Both operands of the '==' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:280:1: warning: V2568 Both operands of the '==' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:284:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:284:1: warning: V108 Incorrect index type: cache_shm[not a memsize-type]. Use memsize type instead.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:285:1: warning: V108 Incorrect index type: cache_shm[not a memsize-type]. Use memsize type instead.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:286:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:286:1: warning: V108 Incorrect index type: cache_shm[not a memsize-type]. Use memsize type instead.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:287:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:287:1: warning: V108 Incorrect index type: cache_shm[not a memsize-type]. Use memsize type instead.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:289:1: warning: V2544 The left and right operands of the '|' operator should not have essential 'signed' and 'signed' types respectively. Consider inspecting operands: left - '(byte4 << 24)', right - '(byte3 << 16)'
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:289:1: warning: V2544 The left and right operands of the '|' operator should not have essential 'signed' and 'signed' types respectively. Consider inspecting operands: left - '(byte4 << 24) | (byte3 << 16)', right - '(byte2 << 8)'
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:289:1: warning: V2568 Both operands of the '|' operator should have the same essential type. The current types are: 'signed' and 'unsigned'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:289:1: warning: V2544 Operands of the '|' operator should have appropriate essential types.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:260:1: note: V2506 A function should have a single point of exit at the end.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:295:1: note: V2571 Pointer to void should not be converted to a pointer to object. Consider inspecting the expression: '* cache_shm = cache_shm_ptr'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:300:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:300:1: warning: V106 Implicit type conversion second argument 'position - 1' of function 'fseek' to memsize type.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:302:1: warning: V2568 Both operands of the '==' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:306:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:306:1: warning: V108 Incorrect index type: cache_shm[not a memsize-type]. Use memsize type instead.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:292:1: note: V2506 A function should have a single point of exit at the end.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:315:1: note: V2571 Pointer to void should not be converted to a pointer to object. Consider inspecting the expression: '* cache_shm = cache_shm_ptr'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:320:1: warning: V106 Implicit type conversion second argument 'position' of function 'fseek' to memsize type.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:322:1: warning: V2568 Both operands of the '==' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:322:1: warning: V2532 String literal should not be assigned to object unless it has type of pointer to const-qualified char.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:323:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:323:1: warning: V2511 The function with the 'malloc' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:323:1: note: V2572 The value of the 'size + 1' expression should not be converted from the essential 'signed' type to the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:324:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:324:1: warning: V575 The potential null pointer is passed into 'memset' function. Inspect the first argument. Check lines: 324, 323.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:326:1: warning: V2568 Both operands of the '==' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:326:1: error: V773 The function was exited without releasing the 'str' pointer. A memory leak is possible.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:326:1: warning: V2532 String literal should not be assigned to object unless it has type of pointer to const-qualified char.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:330:1: warning: V108 Incorrect index type: cache_shm[not a memsize-type]. Use memsize type instead.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:331:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:331:1: warning: V2511 The function with the 'malloc' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:331:1: note: V2572 The value of the 'size + 1' expression should not be converted from the essential 'signed' type to the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:332:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:333:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:333:1: warning: V108 Incorrect index type: cache_shm[not a memsize-type]. Use memsize type instead.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:311:1: note: V2506 A function should have a single point of exit at the end.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:340:1: note: V2572 The value of the '0.0' expression should not be converted to the narrower essential 'floating' type.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:341:1: note: V2571 Pointer to void should not be converted to a pointer to object. Consider inspecting the expression: '* cache_shm = cache_shm_ptr'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:370:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:370:1: warning: V106 Implicit type conversion second argument 'position - 1' of function 'fseek' to memsize type.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:371:1: warning: V112 Dangerous magic number 4 used: ...fread(&ret, 4, 1, handle);.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:372:1: warning: V2568 Both operands of the '==' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:376:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:376:1: warning: V108 Incorrect index type: cache_shm[not a memsize-type]. Use memsize type instead.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:376:1: warning: V112 Dangerous magic number 4 used: ...tion - 1 ], 4);.
IP2Location-C-Library/libIP2Location/IP2Loc_DBInterface.c:338:1: note: V2506 A function should have a single point of exit at the end.
IP2Location-C-Library/libIP2Location/IP2Location.c:76:1: note: V2561 The result of an assignment expression should not be used. Consider inspecting the expression: 'f = fopen(db, "rb")'.
IP2Location-C-Library/libIP2Location/IP2Location.c:82:1: warning: V2511 The function with the 'calloc' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:83:1: warning: V522 There might be dereferencing of a potential null pointer 'loc'. Check lines: 83, 82.
IP2Location-C-Library/libIP2Location/IP2Location.c:71:1: note: V2506 A function should have a single point of exit at the end.
IP2Location-C-Library/libIP2Location/IP2Location.c:92:1: warning: V2507 The body of the 'if' statement should be enclosed in braces.
IP2Location-C-Library/libIP2Location/IP2Location.c:96:1: warning: V2507 The body of the 'if' statement should be enclosed in braces.
IP2Location-C-Library/libIP2Location/IP2Location.c:112:1: warning: V2507 The body of the 'else' branch should be enclosed in braces.
IP2Location-C-Library/libIP2Location/IP2Location.c:90:1: note: V2506 A function should have a single point of exit at the end.
IP2Location-C-Library/libIP2Location/IP2Location.c:123:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:141:1: warning: V112 Dangerous magic number 4 used: ...filehandle, 4);.
IP2Location-C-Library/libIP2Location/IP2Location.c:170:1: warning: V2516 The 'if' ... 'else if' construct should be terminated with an 'else' statement.
IP2Location-C-Library/libIP2Location/IP2Location.c:160:1: note: V2009 Consider rendering the 'addr1', 'addr2' pointers as pointers to const. 
IP2Location-C-Library/libIP2Location/IP2Location.c:163:1: note: V2530 The loop should be terminated with no more than one 'break' or 'goto' statement.
IP2Location-C-Library/libIP2Location/IP2Location.c:188:1: warning: V2567 The cast should not remove 'const' qualification from the type that is pointed to by a pointer.
IP2Location-C-Library/libIP2Location/IP2Location.c:190:1: warning: V112 Dangerous magic number 4 used: ...ipversion = 4;.
IP2Location-C-Library/libIP2Location/IP2Location.c:190:1: warning: V2568 Both operands of the '=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:191:1: warning: V2567 The cast should not remove 'const' qualification from the type that is pointed to by a pointer.
IP2Location-C-Library/libIP2Location/IP2Location.c:193:1: warning: V2567 The cast should not remove 'const' qualification from the type that is pointed to by a pointer.
IP2Location-C-Library/libIP2Location/IP2Location.c:197:1: warning: V2568 Both operands of the '==' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:198:1: warning: V2568 Both operands of the '==' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:199:1: warning: V2568 Both operands of the '==' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:200:1: warning: V2568 Both operands of the '==' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:203:1: warning: V112 Dangerous magic number 4 used: ...ipversion = 4;.
IP2Location-C-Library/libIP2Location/IP2Location.c:203:1: warning: V2568 Both operands of the '=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:204:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'signed' and 'unsigned'.
IP2Location-C-Library/libIP2Location/IP2Location.c:204:1: note: V2572 Value of the expression should not be converted from the essential 'signed' type to the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:204:1: warning: V2568 Both operands of the '=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:209:1: warning: V2568 Both operands of the '=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:214:1: note: V2572 The value of the '-1' expression should not be converted from the essential 'signed' type to the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:214:1: warning: V2568 Both operands of the '=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The left and right operands of the '|' operator should not have essential 'signed' and 'signed' types respectively. Consider inspecting operands: left - '0x00001', right - '0x00002'
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The left and right operands of the '|' operator should not have essential 'signed' and 'signed' types respectively. Consider inspecting operands: left - '0x00001 | 0x00002', right - '0x00004'
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The left and right operands of the '|' operator should not have essential 'signed' and 'signed' types respectively. Consider inspecting operands: left - '0x00001 | 0x00002 | 0x00004', right - '0x00008'
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The left and right operands of the '|' operator should not have essential 'signed' and 'signed' types respectively. Consider inspecting operands: left - '0x00001 | 0x00002 | 0x00004 | 0x00008', right - '0x00010'
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The right operand '0x00020' of the '|' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The right operand '0x00040' of the '|' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The right operand '0x00080' of the '|' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The right operand '0x00100' of the '|' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The right operand '0x00200' of the '|' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The right operand '0x00400' of the '|' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The right operand '0x00800' of the '|' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The right operand '0x01000' of the '|' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The right operand '0x02000' of the '|' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The right operand '0x04000' of the '|' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The right operand '0x08000' of the '|' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The right operand '0x10000' of the '|' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The right operand '0x20000' of the '|' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The right operand '0x40000' of the '|' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:343:1: warning: V2544 The right operand '0x80000' of the '|' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:355:1: warning: V2568 Both operands of the '=' operator should have the same essential type. The current types are: 'floating' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:356:1: warning: V2568 Both operands of the '=' operator should have the same essential type. The current types are: 'floating' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:368:1: warning: V2568 Both operands of the '=' operator should have the same essential type. The current types are: 'floating' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:381:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:381:1: warning: V2544 The right operand '0x00001' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:381:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:381:1: warning: V2544 The left operand '(mode & 0x00001)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:385:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (COUNTRY_...
IP2Location-C-Library/libIP2Location/IP2Location.c:385:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:385:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:396:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:396:1: warning: V2544 The right operand '0x00002' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:396:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:396:1: warning: V2544 The left operand '(mode & 0x00002)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:400:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (COUNTRY_...
IP2Location-C-Library/libIP2Location/IP2Location.c:400:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:400:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:411:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:411:1: warning: V2544 The right operand '0x00004' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:411:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:411:1: warning: V2544 The left operand '(mode & 0x00004)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:415:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (REGION_P...
IP2Location-C-Library/libIP2Location/IP2Location.c:415:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:415:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:426:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:426:1: warning: V2544 The right operand '0x00008' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:426:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:426:1: warning: V2544 The left operand '(mode & 0x00008)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:430:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (CITY_POS...
IP2Location-C-Library/libIP2Location/IP2Location.c:430:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:430:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:441:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:441:1: warning: V2544 The right operand '0x00010' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:441:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:441:1: warning: V2544 The left operand '(mode & 0x00010)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:445:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (ISP_POSI...
IP2Location-C-Library/libIP2Location/IP2Location.c:445:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:445:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:456:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:456:1: warning: V2544 The right operand '0x00020' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:456:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:456:1: warning: V2544 The left operand '(mode & 0x00020)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:458:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (LATITUDE...
IP2Location-C-Library/libIP2Location/IP2Location.c:458:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:458:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:462:1: note: V2572 The value of the '0.0' expression should not be converted to the narrower essential 'floating' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:465:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:465:1: warning: V2544 The right operand '0x00040' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:465:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:465:1: warning: V2544 The left operand '(mode & 0x00040)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:467:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (LONGITUD...
IP2Location-C-Library/libIP2Location/IP2Location.c:467:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:467:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:471:1: note: V2572 The value of the '0.0' expression should not be converted to the narrower essential 'floating' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:474:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:474:1: warning: V2544 The right operand '0x00080' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:474:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:474:1: warning: V2544 The left operand '(mode & 0x00080)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:478:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (DOMAIN_P...
IP2Location-C-Library/libIP2Location/IP2Location.c:478:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:478:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:489:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:489:1: warning: V2544 The right operand '0x00100' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:489:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:489:1: warning: V2544 The left operand '(mode & 0x00100)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:493:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (ZIPCODE_...
IP2Location-C-Library/libIP2Location/IP2Location.c:493:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:493:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:504:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:504:1: warning: V2544 The right operand '0x00200' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:504:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:504:1: warning: V2544 The left operand '(mode & 0x00200)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:508:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (TIMEZONE...
IP2Location-C-Library/libIP2Location/IP2Location.c:508:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:508:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:519:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:519:1: warning: V2544 The right operand '0x00400' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:519:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:519:1: warning: V2544 The left operand '(mode & 0x00400)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:523:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (NETSPEED...
IP2Location-C-Library/libIP2Location/IP2Location.c:523:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:523:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:534:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:534:1: warning: V2544 The right operand '0x00800' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:534:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:534:1: warning: V2544 The left operand '(mode & 0x00800)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:538:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (IDDCODE_...
IP2Location-C-Library/libIP2Location/IP2Location.c:538:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:538:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:549:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:549:1: warning: V2544 The right operand '0x01000' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:549:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:549:1: warning: V2544 The left operand '(mode & 0x01000)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:553:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (AREACODE...
IP2Location-C-Library/libIP2Location/IP2Location.c:553:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:553:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:564:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:564:1: warning: V2544 The right operand '0x02000' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:564:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:564:1: warning: V2544 The left operand '(mode & 0x02000)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:568:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (WEATHERS...
IP2Location-C-Library/libIP2Location/IP2Location.c:568:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:568:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:579:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:579:1: warning: V2544 The right operand '0x04000' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:579:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:579:1: warning: V2544 The left operand '(mode & 0x04000)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:583:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (WEATHERS...
IP2Location-C-Library/libIP2Location/IP2Location.c:583:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:583:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:594:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:594:1: warning: V2544 The right operand '0x08000' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:594:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:594:1: warning: V2544 The left operand '(mode & 0x08000)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:598:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (MCC_POSI...
IP2Location-C-Library/libIP2Location/IP2Location.c:598:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:598:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:609:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:609:1: warning: V2544 The right operand '0x10000' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:609:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:609:1: warning: V2544 The left operand '(mode & 0x10000)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:613:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (MNC_POSI...
IP2Location-C-Library/libIP2Location/IP2Location.c:613:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:613:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:624:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:624:1: warning: V2544 The right operand '0x20000' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:624:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:624:1: warning: V2544 The left operand '(mode & 0x20000)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:628:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (MOBILEBR...
IP2Location-C-Library/libIP2Location/IP2Location.c:628:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:628:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:639:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:639:1: warning: V2544 The right operand '0x40000' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:639:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:639:1: warning: V2544 The left operand '(mode & 0x40000)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:641:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (ELEVATIO...
IP2Location-C-Library/libIP2Location/IP2Location.c:641:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:641:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:642:1: warning: V2508 The function with the 'atof' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:642:1: note: V2572 The value of the 'atof(mem)' expression should not be converted to the narrower essential 'floating' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:643:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:647:1: note: V2572 The value of the '0.0' expression should not be converted to the narrower essential 'floating' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:650:1: warning: V2568 Both operands of the '&' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:650:1: warning: V2544 The right operand '0x80000' of the '&' operator should not have the essential 'signed' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:650:1: warning: V2568 Both operands of the '!=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:650:1: warning: V2544 The left operand '(mode & 0x80000)' of the '&&' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:654:1: warning: V112 Dangerous magic number 4 used: ..., rowaddr + 4 * (USAGETYP...
IP2Location-C-Library/libIP2Location/IP2Location.c:654:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:654:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:375:1: error: V2008 Cyclomatic complexity:    75. Consider refactoring the 'IP2Location_read_record' function.
IP2Location-C-Library/libIP2Location/IP2Location.c:685:1: warning: V2544 The 'high' operand of the '!' operator should not have the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:685:1: warning: V2570 Operands of the '!' operator should have bool essential type.
IP2Location-C-Library/libIP2Location/IP2Location.c:690:1: warning: V2568 Both operands of the '>' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:693:1: warning: V2568 Both operands of the '*' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:693:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'signed' and 'unsigned'.
IP2Location-C-Library/libIP2Location/IP2Location.c:693:1: note: V2572 Value of the expression should not be converted from the essential 'signed' type to the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:697:1: warning: V112 Dangerous magic number 4 used: ...indexpos + 4);.
IP2Location-C-Library/libIP2Location/IP2Location.c:697:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:704:1: warning: V112 Dangerous magic number 4 used: ...(dbcolumn * 4 + 12));.
IP2Location-C-Library/libIP2Location/IP2Location.c:704:1: warning: V2568 Both operands of the '*' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:704:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:705:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:705:1: warning: V112 Dangerous magic number 4 used: ...(dbcolumn * 4 + 12));.
IP2Location-C-Library/libIP2Location/IP2Location.c:705:1: warning: V2568 Both operands of the '*' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:709:1: warning: V112 Dangerous magic number 4 used: ...(dbcolumn * 4 + 12) + 12,...
IP2Location-C-Library/libIP2Location/IP2Location.c:709:1: warning: V2568 Both operands of the '*' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:709:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:715:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:719:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:668:1: warning: V813 Decreased performance. The 'parsed_ipv' argument should probably be rendered as a constant pointer.
IP2Location-C-Library/libIP2Location/IP2Location.c:668:1: note: V2506 A function should have a single point of exit at the end.
IP2Location-C-Library/libIP2Location/IP2Location.c:668:1: note: V2537 Functions should not have unused parameters. Consider inspecting the parameter: 'ipstring'.
IP2Location-C-Library/libIP2Location/IP2Location.c:745:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:748:1: warning: V2568 Both operands of the '>' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:755:1: warning: V112 Dangerous magic number 4 used: ...indexpos + 4);.
IP2Location-C-Library/libIP2Location/IP2Location.c:755:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:761:1: warning: V112 Dangerous magic number 4 used: ...dbcolumn * 4);.
IP2Location-C-Library/libIP2Location/IP2Location.c:761:1: warning: V2568 Both operands of the '*' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:762:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:762:1: warning: V112 Dangerous magic number 4 used: ...dbcolumn * 4);.
IP2Location-C-Library/libIP2Location/IP2Location.c:762:1: warning: V2568 Both operands of the '*' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:766:1: warning: V112 Dangerous magic number 4 used: ...dbcolumn * 4), mode);.
IP2Location-C-Library/libIP2Location/IP2Location.c:766:1: warning: V2568 Both operands of the '*' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:772:1: warning: V2568 Both operands of the '-' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:776:1: warning: V2568 Both operands of the '+' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:727:1: warning: V813 Decreased performance. The 'parsed_ipv' argument should probably be rendered as a constant pointer.
IP2Location-C-Library/libIP2Location/IP2Location.c:727:1: note: V2506 A function should have a single point of exit at the end.
IP2Location-C-Library/libIP2Location/IP2Location.c:727:1: note: V2537 Functions should not have unused parameters. Consider inspecting the parameter: 'ipstring'.
IP2Location-C-Library/libIP2Location/IP2Location.c:787:1: warning: V112 Dangerous magic number 4 used: ...pversion == 4).
IP2Location-C-Library/libIP2Location/IP2Location.c:787:1: warning: V2568 Both operands of the '==' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:792:1: warning: V2568 Both operands of the '==' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:784:1: note: V2506 A function should have a single point of exit at the end.
IP2Location-C-Library/libIP2Location/IP2Location.c:806:1: warning: V2511 The function with the 'calloc' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:817:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:818:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:819:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:820:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:821:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:822:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:823:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:824:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:825:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:826:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:827:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:828:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:829:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:830:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:831:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:832:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:833:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:834:1: warning: V2511 The function with the 'free' name should not be used.
IP2Location-C-Library/libIP2Location/IP2Location.c:811:1: note: V2506 The 'return' statement should be the last statement of a function.
IP2Location-C-Library/libIP2Location/IP2Location.c:841:1: note: V206 Explicit conversion from 'unsigned int *' to 'unsigned char *'.
IP2Location-C-Library/libIP2Location/IP2Location.c:847:1: warning: V2568 Both operands of the '*' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:847:1: note: V2572 The value of the '(uint8_t)(ptr[2]) * 256' expression should not be converted from the essential 'signed' type to the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:847:1: warning: V2568 Both operands of the '+=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:848:1: warning: V2568 Both operands of the '*' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:848:1: note: V2572 The value of the '(uint8_t)(ptr[1]) * 256 * 256' expression should not be converted from the essential 'signed' type to the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:848:1: warning: V2568 Both operands of the '+=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:849:1: warning: V2568 Both operands of the '*' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:849:1: note: V2572 The value of the '(uint8_t)(ptr[0]) * 256 * 256 * 256' expression should not be converted from the essential 'signed' type to the essential 'unsigned' type.
IP2Location-C-Library/libIP2Location/IP2Location.c:849:1: warning: V2568 Both operands of the '+=' operator should have the same essential type. The current types are: 'unsigned' and 'signed'.
IP2Location-C-Library/libIP2Location/IP2Location.c:840:1: error: V595 The 'ipstring' pointer was utilized before it was verified against nullptr. Check lines: 840, 844.
IP2Location-C-Library/libIP2Location/IP2Location.c:838:1: note: V2009 Consider rendering the 'ipstring' pointer as a pointer to const.
IP2Location-C-Library/libIP2Location/IP2Location.c:856:1: note: V2009 Consider rendering the 'ipaddr' pointer as a pointer to const.
IP2Location-C-Library/libIP2Location/IP2Location.c:863:1: note: V2009 Consider rendering the 'ipaddr' pointer as a pointer to const.
IP2Location-C-Library/libIP2Location/IP2Location.c:870:1: note: V126 Be advised that the size of the type 'long' varies between LLP64/LP64 data models.
IP2Location-C-Library/libIP2Location/IP2Location.c:886:1: warning: V2532 String literal should not be assigned to object unless it has type of pointer to const-qualified char.
IP2Location-C-Library/libIP2Location/IP2Location.c:27:1: warning: V2573 Identifiers that start with '__' or '_[A-Z]' are reserved. Consider inspecting the '_STR2' identifier.
IP2Location-C-Library/libIP2Location/IP2Location.c:28:1: warning: V2573 Identifiers that start with '__' or '_[A-Z]' are reserved. Consider inspecting the '_STR' identifier.