Patents by Inventor John McEnerney

John McEnerney has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 9207920
    Abstract: A system for testing a software application receives one or more object spaces extracted from a development or runtime environment of the software application. The extracted object space includes information about various objects associated with the software application, its dependencies, and/or environment, and some of the objects may be dynamically created and/or modified. The extracted object space does not include any source code. A language dependent extraction component can extract the object space using introspections and/or reflection APIs. The extracted object can be translated into a language-independent format and can be analyzed to identify any vulnerabilities in the software application without access to the source code, compiled binary, and runtime environment of the software application.
    Type: Grant
    Filed: May 30, 2014
    Date of Patent: December 8, 2015
    Assignee: Veracode, Inc.
    Inventors: Ryan O'Boyle, John Mcenerney, Christien Rioux
  • Publication number: 20140359588
    Abstract: A system for testing a software application receives one or more object spaces extracted from a development or runtime environment of the software application. The extracted object space includes information about various objects associated with the software application, its dependencies, and/or environment, and some of the objects may be dynamically created and/or modified. The extracted object space does not include any source code. A language dependent extraction component can extract the object space using introspections and/or reflection APIs. The extracted object can be translated into a language-independent format and can be analyzed to identify any vulnerabilities in the software application without access to the source code, compiled binary, and runtime environment of the software application.
    Type: Application
    Filed: May 30, 2014
    Publication date: December 4, 2014
    Inventors: Ryan O'Boyle, John Mcenerney, Christien Rioux
  • Patent number: 7496905
    Abstract: The present invention generates state machines that can be used in a scanner and/or a parser for software program compilation. The state machines are not table-driven, but rather are encoded directly by creating jumps and branches in bytecodes, which are machine-independent codes generated by a Java compiler and can be executed on any Java-enabled device. Such state machines can be much faster than those based on tables, and much smaller in code size than those implemented in executable codes. In addition, such state machines can be optimized to reduce the number of states and the amount of codes required to encode each state in it. This can allow these state machines to meet strict code size restrictions specified by certain virtual machines, such as the Java virtual machine.
    Type: Grant
    Filed: July 16, 2004
    Date of Patent: February 24, 2009
    Assignee: BEA Systems, Inc.
    Inventors: Kevin Zatloukal, John McEnerney
  • Patent number: 7451299
    Abstract: State machines can be used in a scanner and a parser for program compilation. The state machines can be non-table-driven, but rather are encoded directly in bytecodes. A special algorithm can be used to generate the multi-way branch associated with a state in a state machine so that the multi-way branch meets specified optimality requirements on the size of the bytecodes. The bytecodes so implemented can be more compact and run faster than those generated un-optimized. The algorithm for obtaining an optimal implementation of the multi-way branch can be conceptually divided into three phases: first, it constructs a set of subarrays that form a disjoint covering for the target array; second, it determines an optimal branch implementation for each subarray; and third, it determines the optimal branch implementation for each union of one or more adjacent subarrays, culminating to the optimal implementation for the entire target array.
    Type: Grant
    Filed: July 16, 2004
    Date of Patent: November 11, 2008
    Assignee: BEA Systems, Inc.
    Inventors: Kevin Zatloukal, John McEnerney
  • Publication number: 20050050308
    Abstract: State machines can be used in a scanner and a parser for program compilation. The state machines can be non-table-driven, but rather are encoded directly in bytecodes. A special algorithm can be used to generate the multi-way branch associated with a state in a state machine so that the multi-way branch meets specified optimality requirements on the size of the bytecodes. The bytecodes so implemented can be more compact and run faster than those generated un-optimized. The algorithm for obtaining an optimal implementation of the multi-way branch can be conceptually divided into three phases: first, it constructs a set of subarrays that form a disjoint covering for the target array; second, it determines an optimal branch implementation for each subarray; and third, it determines the optimal branch implementation for each union of one or more adjacent subarrays, culminating to the optimal implementation for the entire target array.
    Type: Application
    Filed: July 16, 2004
    Publication date: March 3, 2005
    Applicant: BEA Systems, Inc.
    Inventors: Kevin Zatloukal, John McEnerney
  • Publication number: 20050015757
    Abstract: The present invention generates state machines that can be used in a scanner and/or a parser for software program compilation. The state machines are not table-driven, but rather are encoded directly by creating jumps and branches in bytecodes, which are machine-independent codes generated by a Java compiler and can be executed on any Java-enabled device. Such state machines can be much faster than those based on tables, and much smaller in code size than those implemented in executable codes. In addition, such state machines can be optimized to reduce the number of states and the amount of codes required to encode each state in it. This can allow these state machines to meet strict code size restrictions specified by certain virtual machines, such as the Java virtual machine. This description is not intended to be a complete description of, or limit the scope of, the invention.
    Type: Application
    Filed: July 16, 2004
    Publication date: January 20, 2005
    Applicant: BEA Systems, Inc.
    Inventors: Kevin Zatloukal, John McEnerney