Commit Graph

2388 Commits

Author SHA1 Message Date
Darryl Miles 6946ea6845 plow/PlowTest.c: Wrong type of arguments to formatting function
Fix code scanning alert no. 106: Wrong type of arguments to formatting function (#30)

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles 384e59ea98 plow/PlowTest.c: Wrong type of arguments to formatting function
Fix code scanning alert no. 104: Wrong type of arguments to formatting function (#29)

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles 318993cb7b plow/PlowTest.c: Wrong type of arguments to formatting function
Fix code scanning alert no. 103: Wrong type of arguments to formatting function (#28)

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles 82aa62e65d database/DBcellsrch.c: Wrong type of arguments to formatting function
Fix code scanning alert no. 66: Wrong type of arguments to formatting function (#33)

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl L. Miles e896377ead extflat/EFantenna.c: EFDone() Call to function with fewer arguments than declared parameters
Passing NULL is valid in efFreeNodeList() to not perform callback..

extflat/EFdef.c:
^231a299 (2017-04-25 08:41:48 -0400  97) void
5e3c26c9 (2021-12-13 18:05:53 -0500  98) EFDone(func)
5e3c26c9 (2021-12-13 18:05:53 -0500  99)     int (*func)();

commit 5e3c26c95a (tag: 8.3.241)
Date:   Mon Dec 13 18:05:53 2021 -0500

extflat/EFdef.c:97
void EFDone(int (*func)());

extflat/EFbuild.c:2180
void efFreeNodeList(EFNode *head, int (*func)());

CodeQL: https://github.com/dlmiles/magic/security/code-scanning/16
2024-10-01 12:36:12 -04:00
Darryl L. Miles 4d81a77bf3 extcheck/extcheck.c: EFDone() Call to function with fewer arguments than declared parameters
Passing NULL is valid in efFreeNodeList() to not perform callback..

extflat/EFdef.c:
^231a299 (2017-04-25 08:41:48 -0400  97) void
5e3c26c9 (2021-12-13 18:05:53 -0500  98) EFDone(func)
5e3c26c9 (2021-12-13 18:05:53 -0500  99)     int (*func)();

commit 5e3c26c95a (tag: 8.3.241)
Date:   Mon Dec 13 18:05:53 2021 -0500

extflat/EFdef.c:97
void EFDone(int (*func)());

extflat/EFbuild.c:2180
void efFreeNodeList(EFNode *head, int (*func)());

CodeQL: none (grep found this?)
2024-10-01 12:36:12 -04:00
Darryl L. Miles c8e00ef494 ext2spice/ext2spice.c: EFDone() Call to function with fewer arguments than declared parameters
Passing NULL is valid in efFreeNodeList() to not perform callback..

extflat/EFdef.c:
^231a299 (2017-04-25 08:41:48 -0400  97) void
5e3c26c9 (2021-12-13 18:05:53 -0500  98) EFDone(func)
5e3c26c9 (2021-12-13 18:05:53 -0500  99)     int (*func)();

commit 5e3c26c95a (tag: 8.3.241)
Date:   Mon Dec 13 18:05:53 2021 -0500

extflat/EFdef.c:97
void EFDone(int (*func)());

extflat/EFbuild.c:2180
void efFreeNodeList(EFNode *head, int (*func)());

CodeQL: https://github.com/dlmiles/magic/security/code-scanning/20
        https://github.com/dlmiles/magic/security/code-scanning/21
        https://github.com/dlmiles/magic/security/code-scanning/22
2024-10-01 12:36:12 -04:00
Darryl L. Miles d2ae7f78e8 ext2sim/ext2sim.c: EFDone() Call to function with fewer arguments than declared parameters
Passing NULL is valid in efFreeNodeList() to not perform callback..

extflat/EFdef.c:
^231a299 (2017-04-25 08:41:48 -0400  97) void
5e3c26c9 (2021-12-13 18:05:53 -0500  98) EFDone(func)
5e3c26c9 (2021-12-13 18:05:53 -0500  99)     int (*func)();

commit 5e3c26c95a (tag: 8.3.241)
Date:   Mon Dec 13 18:05:53 2021 -0500

extflat/EFdef.c:97
void EFDone(int (*func)());

extflat/EFbuild.c:2180
void efFreeNodeList(EFNode *head, int (*func)());

CodeQL: https://github.com/dlmiles/magic/security/code-scanning/11
2024-10-01 12:36:12 -04:00
Darryl L. Miles 1360f962a1 calma/CalmaRdcl.c: calmaFindCell() Call to function with fewer arguments than declared parameters
The 'predefined' pointer argument to calmaFindCell() is for an optional return value, so must be
NULL when feature is not used.

Copilot Autofix rejected: newdef = calmaFindCell(newname, someSecondArgument);

calma/CalmaRdcl.c
1c822652 (2020-12-04 16:56:51 -0500 1359)     bool *predefined; /* If this cell was in memory before the GDS
1c822652 (2020-12-04 16:56:51 -0500 1360)                        * file was read, then this flag gets set.
1c822652 (2020-12-04 16:56:51 -0500 1361)                        */

commit 1c82265244 (tag: mpw-one-a, tag: 8.3.92)
Date:   Fri Dec 4 16:56:51 2020 -0500

CodeQL: https://github.com/dlmiles/magic/security/code-scanning/6
        https://github.com/dlmiles/magic/security/code-scanning/5
2024-10-01 12:36:12 -04:00
Darryl L. Miles 7feec63580 cif/CIFgen.c: CmdFindNetProc() Call to function with fewer arguments than declared parameters
The 'isvalid' pointer argument to CmdFindNetProc() is for an optional return value, so must be
NULL when feature is not used.

Copilot Autofix rejected: ttype = CmdFindNetProc(netname, CIFDummyUse, &bbox, FALSE, additional_arg1, additional_arg2);

commands/CmdFI.c
cfb81101 (2022-03-30 13:02:12 -0400 1584)     bool *isvalid;

commit f89d52dbcc (tag: 8.3.253)
Date:   Thu Jan 6 13:29:43 2022 -0500

CodeQL: https://github.com/dlmiles/magic/security/code-scanning/7
2024-10-01 12:36:12 -04:00
Darryl L. Miles ce1e027c55 resis/ResSimple.c: ResGetDevice(): Call to function with fewer arguments than declared parameters
gparams.rg_ttype seems to be the only value of the correct type that has connectivity with the callsite.

Copilot Autofix rejected: ResGetDevice(gparams.rg_devloc, /* second argument */);

resis/ResSimple.c
9aa39f82 (2021-05-25 22:41:52 -0400 1039)           resDevice *res = ResGetDevice(gparams.rg_devloc);

commit 9aa39f820f (tag: 8.3.169)
Date:   Tue May 25 22:41:52 2021 -0400
2024-10-01 12:36:12 -04:00
Darryl L. Miles d297b99953 select/selOps.c: CmdFindNetProc() Call to function with fewer arguments than declared parameters
The 'isvalid' pointer argument to CmdFindNetProc() is for an optional return value, so must be
NULL when feature is not used.

Copilot Autofix rejected: ttype = CmdFindNetProc(lab1, use, &rect, FALSE, additionalArg);

commands/CmdFI.c
cfb81101 (2022-03-30 13:02:12 -0400 1584)     bool *isvalid;

commit f89d52dbcc (tag: 8.3.253)
Date:   Thu Jan 6 13:29:43 2022 -0500

CodeQL: https://github.com/dlmiles/magic/security/code-scanning/25
2024-10-01 12:36:12 -04:00
Darryl L. Miles fff3be2f29 utils/main.c: DefRead() Call to function with fewer arguments than declared parameters
Resolution maintains behaviour closest to original behaviour from a37fc1e2

Copilot Autofix no offered.

related git blame lef/defRead.c:
cfb81101 (2022-03-30 13:02:12 -0400 2388)     bool annotate;
f7df5e7c (2022-06-24 15:22:53 -0400 2389)     bool noblockage;

related commits:

commit cfb81101ec
Date:   Wed Mar 30 13:02:12 2022 -0400

commit f7df5e7c86 (tag: 8.3.315)
Date:   Fri Jun 24 15:22:53 2022 -0400

commit a37fc1e242
Date:   Thu Mar 5 14:29:54 2020 -0500

CodeQL: https://github.com/dlmiles/magic/security/code-scanning/29
2024-10-01 12:36:12 -04:00
Darryl L. Miles 3db35216b9 utils/main.c: LefRead() Call to function with fewer arguments than declared parameters
Looks like -1 is accepted as placeholder, maybe it should be the
temporary->fn (filename mtime?).

Copilot Autofix rejected: LefRead(temporary->fn, FALSE, NULL);

related git blame utils/main.c:
8e80644d (2022-01-22 13:30:11 -0500 2078)     int lefTimestamp;         /* If not -1, use the value pointed to
8e80644d (2022-01-22 13:30:11 -0500 2884)     int lefTimestamp;

related commit:
commit 8e80644dd7
Date:   Sat Jan 22 13:30:11 2022 -0500

CodeQL: https://github.com/dlmiles/magic/security/code-scanning/28
2024-10-01 12:36:12 -04:00
Darryl L. Miles 49f4daa715 utils/main.c: Call to function with fewer arguments than declared parameters
Copilot Autofix rejected: DBFileRecovery(MainFileName);

database/DBio.c looks to take NULL as a value for automatic recovery.

Related commits:
commit 231a299b16 (tag: 8.2.0)
Date:   Tue Apr 25 08:41:48 2017 -0400
    Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky
2024-10-01 12:36:12 -04:00
Darryl L. Miles f47a173a49 commands/CmdLQ.c: Call to function with fewer arguments than declared parameters
No AI resolution.

The NULL added is cdata which looks to be opaque callback user-defined-pointer,
this is not used in the method printPropertiesFunc() as a possible 3rd argument.

CodeQL: https://github.com/dlmiles/magic/security/code-scanning/157
2024-10-01 12:36:12 -04:00
Darryl Miles 88a1a9b166 utils/undo.c: Wrong type of arguments to formatting function
Fix code scanning alert no. 120: Wrong type of arguments to formatting function (#17)

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles 9f052c0e4d utils/undo.c: Wrong type of arguments to formatting function
Fix code scanning alert no. 117: Wrong type of arguments to formatting function (#16)

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles 8f60ed472b textio/txCommands.c: Wrong type of arguments to formatting function
Fix code scanning alert no. 116: Wrong type of arguments to formatting function (#19)

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles a307e9d052 textio/txCommands.c: Wrong type of arguments to formatting function
Fix code scanning alert no. 115: Wrong type of arguments to formatting function (#20)

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles 9295240047 textio/txCommands.c: Wrong type of arguments to formatting function
Fix code scanning alert no. 114: Wrong type of arguments to formatting function (#21)

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles 573e59da44 database/DBcellname.c: Call to function with fewer arguments than declared parameters
Fix code scanning alert no. 10: Call to function with fewer arguments than declared parameters (#14)

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles a5f7cbd597 database/DBcellcopy.c: Call to function with fewer arguments than declared parameters
Fix code scanning alert no. 9: Call to function with fewer arguments than declared parameters (#15)

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles c89455782b cmwind/CMWcmmnds.c: Incorrect return-value check for a 'scanf'-like function
Fix code scanning alert no. 134: Incorrect return-value check for a 'scanf'-like function (#13)

* Create codeql.yml

* Fix code scanning alert no. 134: Incorrect return-value check for a 'scanf'-like function

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles 886a0212e8 database/DBtech.c: Incorrect return-value check for a 'scanf'-like function
Fix code scanning alert no. 135: Incorrect return-value check for a 'scanf'-like function (#12)

* Create codeql.yml

* Fix code scanning alert no. 135: Incorrect return-value check for a 'scanf'-like function

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles 2a00ab7eb8 extract/ExtTech.c: Incorrect return-value check for a 'scanf'-like function
Fix code scanning alert no. 136: Incorrect return-value check for a 'scanf'-like function (#11)

* Create codeql.yml

* Fix code scanning alert no. 136: Incorrect return-value check for a 'scanf'-like function

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles e66e3b32ad extract/ExtBasic.c: Incorrect return-value check for a 'scanf'-like function
Fix code scanning alert no. 149: Incorrect return-value check for a 'scanf'-like function (#10)

* Create codeql.yml

* Fix code scanning alert no. 149: Incorrect return-value check for a 'scanf'-like function

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles 96c7e283c0 gcr/gcrDebug.c: Incorrect return-value check for a 'scanf'-like function
Fix code scanning alert no. 137: Incorrect return-value check for a 'scanf'-like function (#9)

* Create codeql.yml

* Fix code scanning alert no. 137: Incorrect return-value check for a 'scanf'-like function

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles 4ca98dc31b graphics/grCMap.c: Incorrect return-value check for a 'scanf'-like function
Fix code scanning alert no. 150: Incorrect return-value check for a 'scanf'-like function (#8)

* Create codeql.yml

* Fix code scanning alert no. 150: Incorrect return-value check for a 'scanf'-like function

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* Update grCMap.c

* AI suggested '< 1', DLM edited to '<= 0' easier for a human to reason about ?

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles 39e76f3f31 graphics/grDStyle.c: Incorrect return-value check for a 'scanf'-like function
Fix code scanning alert no. 151: Incorrect return-value check for a 'scanf'-like function (#7)

* Create codeql.yml

* Fix code scanning alert no. 151: Incorrect return-value check for a 'scanf'-like function

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* Update grDStyle.c

* AI suggested '< 1', DLM edited to '<= 0' easier for a human to reason about ?

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles 64d94ae588 router/rtrCmd.c: Incorrect return-value check for a 'scanf'-like function
Fix code scanning alert no. 156: Incorrect return-value check for a 'scanf'-like function (#6)

* Create codeql.yml

* Fix code scanning alert no. 156: Incorrect return-value check for a 'scanf'-like function

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles 4374a1918e lef/defWrite.c: Too few arguments to formatting function
Fix code scanning alert no. 63: Too few arguments to formatting function (#3)

* Create codeql.yml

* Fix code scanning alert no. 63: Too few arguments to formatting function

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles 51b8161a21 lef/defWrite.c: Too few arguments to formatting function
Fix code scanning alert no. 62: Too few arguments to formatting function (#1)

* Create codeql.yml

* Fix code scanning alert no. 62: Too few arguments to formatting function

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl Miles fed93c200d gcr/gcrShwFlgs.c: Likely overrunning write
Fix code scanning alert no. 2: Likely overrunning write (#5)

* Fix code scanning alert no. 2: Likely overrunning write

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* Update gcrShwFlgs.c

* AI added snprintf(), DLM increased buffer for enough space for rounded/aligned 64bit %p

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-01 12:36:12 -04:00
Darryl L. Miles 881115a856 database/DBio.c: Fix MAGIC_WRAPPER #endif to fix CI WASM build
Misplaced #endif causing the build to break when option enabled
error introduced in 3dc5018

Related commits:

commit 68a088943f
Date:   Tue Sep 12 11:12:00 2023 -0400

commit 3dc5018af4 (tag: 8.3.477)
Date:   Fri May 3 21:43:27 2024 -0400
2024-09-30 23:00:00 +01:00
Tim Edwards f3b08ad470 Corrected an error that was introduced in the August 3 commit and
which prevents the "Ctrl-P" key from raising the .params window;
the underlying error is that the original error in the "property"
command was a disagreement about where "argstart" is placed.  The
command was fixed to make the "property" command work correctly.
However, the solution made "argstart" wrong when using the command
"cellname property".  Now both uses are handled correctly.
2024-09-25 21:26:41 -04:00
Tim Edwards 427547c927 Changed the behavior of renaming conflicting cells from
"<name>#<num>" to "<name>__<num>", because the use of "#" is
considered illegal for cell names in GDS.
2024-09-15 17:33:51 -04:00
Tim Edwards 974621ebe7 Corrected a missing pointer to integer cast in code that was
added fairly recently when getting rid of crashes related to
commands operating on non-edit cells.  The lack of a cast was
prevening compilation on systems with more rigorous error
checking.
2024-08-30 01:48:38 -04:00
Tim Edwards 0c36365db8 Revised the file opening routine with respect to the search paths.
Previously, a file path beginning with "/", "./", or "../" would be
searched for verbatim and no searching would be done over paths.
This behavior now occurs for a leading "/" only.  File paths with
"./" or "../" will search for the file with the path verbatim, then
proceed to search for the file with each search path prepended to
the filename as usual.  This solves a problem for reusable, non- PDK
IP blocks, where the IP block may have an abstract view pointing to
a GDS file which is specified as being located at "../gds/<file>".
This file would not be found if the IP block was included into
another project.  Now it can be done if the path to the IP is given
by "addpath".
2024-08-16 17:45:10 -04:00
Tim Edwards f3bfde60f0 Change to ext2spice which should solve the problem of ports no
longer being output in order after flattening a circuit.
2024-08-06 11:17:27 -04:00
Tim Edwards 155f19a6d8 Corrected an issue causing a crash condition when using "extract
unique" on a flattened layout (some labels end up NULL and the
NULL condition needs to be checked).  Also remembered to update
VERSION, which was missed on the last commit.
2024-08-04 11:37:54 -04:00
Tim Edwards b441d668bd Corrected the "property" command parsing, which had a print statement
without an argument, resulting in random things getting printed to
the output when a property name does not exist.
2024-08-03 12:05:41 -04:00
Tim Edwards 81b5ac2079 Added two checks when loading a file to determine if two cells are
the same:  (1) If the inodes of the filename are the same, then the
cells are the same.  This avoids treating symbolic links as
different paths with different files;  (2) If both layouts are in
git repositories and the git repository commit hashes are the same,
then the cells are considered to be the same.  This allows projects
to be cloned into other projects as dependencies and used in
multiple places without magic treating them as different layouts.
2024-06-13 15:39:27 -04:00
Tim Edwards e9db9ecbc9 Another correction that avoids a crash condition when attempting
to do an instance array resizing on an uneditable cell.
2024-05-25 21:15:01 -04:00
Tim Edwards cf5fd867f4 Corrected another error related to read-only views in which magic crashes when
attempting to place a generated cell in the layout, as pointed out by Mark Martin
in github Issue #309.
2024-05-24 12:43:36 -04:00
Tim Edwards 291ba96285 Corrected a bad statement running Tcl_NewListObj() that fails to
assign the result to anything, causing later uses of variable
"lobj" to have an unitialized value and potentially causing a
crash condition.  Thanks to Risto Bell for pointing out the
error.
2024-05-13 21:51:59 -04:00
Tim Edwards e4c28ef3bf Corrected an issue introduced in version 8.3.471 when trying to fix
some of the "select" command syntax;  the code change caused the
"select top cell" command to behave the same as "select cell".
There was no specific code for handling "top", so now there is.
2024-05-12 15:54:40 -04:00
Tim Edwards f0c3ec33d6 Modified the "lef nocheck" command to take the argument "*", meaning
that no nets will be checked for antenna gate and diffusion area,
and no antenna properties will be output to the LEF file.  This can
greatly speed up LEF output file generation for a large design.
Thank you to Tamas Hubai for the code patch.
2024-05-11 20:48:35 -04:00
Tim Edwards 9dec47c9b2 Corrected a fairly long-standing error in which the MASKHINTS_ values
in the .mag file "properties" list are not handled as being in
database units during .mag file reading and writing (although they
do track internally), making them subject to being scaled incorrectly
and change between a read and a write.  Thanks to Sylvain Munaut for
identifying the problem.
2024-05-10 13:05:06 -04:00
Tim Edwards fd2b1eb9ee Added code that when running "extract unique" always prefers to
change a non-port label name instead of a port name whenever it
finds one of each with the same text on different nets.
2024-05-07 16:20:35 -04:00