• Main Menu
  • Programming

    • Race Condition

      Race Condition

      A race condition occurs when multiple processes access and manipulate the same data concurrently, and the outcome of the execution depends on the particular order in which the access takes place. A race condition is of interest to a hacker when the race condition can be utilized to gain privileged system access. Consider the following

    • Java Package

      Java Package

      A Java package is a set of classes which are grouped together. This grouping helps to organize Java classes and codevent multiple Java classes with the same name. Using Java Packages To use a package in your Java source code, you must either import the package or use the fully qualified class name each time

    • Format String Vulnerability

      Format String Vulnerability

      To understand what a format string vulnerability is, you first need to know what a format string is. A format string is a way of telling the C compiler how it should format numbers when it prints them. Format Strings in C In the C programming language there are a number of functions which accept

    • JNI (Java Native Interface)

      JNI (Java Native Interface)

      The JNI (Java Native Interface) is a layer of Java that permits code executing or running in the JVM (Java Virtual Machine) to invoke and to be called by native libraries and applications written in other languages. The JNI is most commonly used with the C++, C, and Assembly programming languages. Typically, code developers will

    • Java Data Types

      Java Data Types

      Data types in the Java programming language are basically divided into two groups – primitive data types and object references. A primitive data type is a basic building block and has full built-in support. Many other languages also support composite data types, which are build on a combination of primitive data types and may or

    • Integer Overflow

      Integer Overflow

      An integer overflow, or integer wrapping, is a potential problem in a program based upon the fact that the value that can be held in a numeric datatype is limited by the data type’s size in bytes. ANSI C uses the following minimum sizes: data type size (bytes) char 1 short 2 int 2 long

    • Random Number Vulnerability

      Random Number Vulnerability

      Computers are deterministic and are therefore predictable. Computers cannot, in and of themselves, generate truly random numbers. In the absence of outside input, computers can only create pseudo-random numbers.  In the words of John Von Neumann, “Anyone attempting to produce random numbers by purely arithmetic means is, of course, in a state of sin.” A

    • How to Debug Java

      How to Debug Java

      The ability to debug any modern programming language is a critical skill for programmers of all skill levels. Learning how to debug Java helps developers discover the causes of logic and non-trivial syntax errors that prevent proper execution of Java programs. The ability to step-through a Java program using a debugging environment provided by updated

    • Postfix


      The sum of X and Y is written as X+Y where + is the operator while X and Y are the operands. We have always learnt to write the sum of two numbers as X + Y; this notation is know as infix. Here, we’ll be talking about the postfix notation of representing arithmetic operations.

    • Deleting an Element from a Linear Linked List

      Deleting an Element from a Linear Linked List

      To delete an element from the list, first the pointers are set properly and then the memory occupied by the node to be deleted is deallocated (freed). This tutorial covers the deletion of a node from the following three positions: At the beginning of the list At the end of the list After a given

    322 queries in 0.321 seconds.