15,888,177 members
Sign in
Sign in
Email
Password
Forgot your password?
Sign in with
home
articles
Browse Topics
>
Latest Articles
Top Articles
Posting/Update Guidelines
Article Help Forum
Submit an article or tip
Import GitHub Project
Import your Blog
quick answers
Q&A
Ask a Question
View Unanswered Questions
View All Questions
View C# questions
View C++ questions
View Javascript questions
View Visual Basic questions
View Python questions
discussions
forums
CodeProject.AI Server
All Message Boards...
Application Lifecycle
>
Running a Business
Sales / Marketing
Collaboration / Beta Testing
Work Issues
Design and Architecture
Artificial Intelligence
ASP.NET
JavaScript
Internet of Things
C / C++ / MFC
>
ATL / WTL / STL
Managed C++/CLI
C#
Free Tools
Objective-C and Swift
Database
Hardware & Devices
>
System Admin
Hosting and Servers
Java
Linux Programming
Python
.NET (Core and Framework)
Android
iOS
Mobile
WPF
Visual Basic
Web Development
Site Bugs / Suggestions
Spam and Abuse Watch
features
features
Competitions
News
The Insider Newsletter
The Daily Build Newsletter
Newsletter archive
Surveys
CodeProject Stuff
community
lounge
Who's Who
Most Valuable Professionals
The Lounge
The CodeProject Blog
Where I Am: Member Photos
The Insider News
The Weird & The Wonderful
help
?
What is 'CodeProject'?
General FAQ
Ask a Question
Bugs and Suggestions
Article Help Forum
About Us
Search within:
Articles
Quick Answers
Messages
Artificial Intelligence
Artificial Intelligence
Neural Networks
Machine Learning
Deep Learning
ML.Net
Big Data
Data Science
Tensorflow
ChatGPT
Internet of Things
Internet of Things
Arduino
Edge Device
Raspberry-Pi
Wearables
IoT Edge
Industrial IoT
DevOps
DevOps
Agile
Automation
Continuous Build
Continuous Delivery
Continuous Deployment
Continuous Integration
Deployment
Git
Installation
Integration Testing
Load Testing
Quality Assurance
TFS
Unit Testing
Testing
Containers
Containers
Docker
Kubernetes
Virtual Machine
High Performance Computing
High Performance Computing
GPU
Parallel Processing
Parallelization
Vectorization
Hosted Services
Hosted Services
AWS
Cordova
ExtJS
Google Cloud
Microservices
PhoneGap
Serverless
Storage
Web Hosting
WordPress
Azure
Security
Security
Blockchain
Cryptography
Encryption
Identity
Identity Server
Web Development
Web Development
Blazor
CSS3
Flask
HTML5
Kestrel
LESS
Nginx
Node.js
React
SCSS
Spring
Vue.js
ASP.NET
CSS
Apache
HTML
IIS
XHTML
Mobile Apps
Mobile Apps
Flutter
Ionic
iOS
Nativescript
React Native
Xamarin
Windows Mobile
Android
Desktop Programming
Desktop Programming
Cocoa
Electron
QT
Universal Windows Platform
X11
Windows Forms
ATL
MFC
Swing
Win32
WTL
WPF
XAML
System
Database Development
Database Development
Data Visualization
Elasticsearch
Lucene
MariaDB
MongoDB
NoSQL
PostgreSQL
Redis
MySQL
SQL Server
Productivity Apps and Services
Productivity Apps and Services
LibreOffice
OpenOffice
Sharepoint
Team Communication Tools
Biztalk
Microsoft Office
SAP
Game Development
Game Development
Doom
Kinect
Playstation 4
Playstation 5
Unity
Unreal
XBox
Multimedia
Multimedia
Audio
Image Processing
Video
Audio Video
DirectX
GDI
GDI+
OpenGL
General Programming
General Programming
Algorithms
Compression
Computational Geometry
Emulation
Exceptions
File
Internet
Localization
Memory Management
Optimization
Parser
Performance
Regular Expressions
Sorting
State Machines
Architecture
Design / Graphics
Printing
String
Threads
Usability
Programming Languages
Programming Languages
ASM
Bash
Basic
COBOL
Dart
Go
Haskell
Kotlin
Lua
Pascal
R
Razor
Rust
Scala
Swift
Typescript
Objective C
Visual Basic
VBScript
C++
C#
F#
FORTRAN
Java
Javascript
Perl
Python
Ruby
SQL
PHP
PowerShell
XML
Articles by Grant Curell (Articles: 2, Technical Blogs: 14, Tip/Tricks: 4)
Articles: 2, Technical Blogs: 14, Tip/Tricks: 4
Articles
Technical Blogs
Tips and Tricks
Reference Articles
Projects
Average article rating: 4.98
Mobile Apps
iOS
Use Python to Interact with Cisco Device Using Pyserial
31 Jan 2015 Updated:
31 Jan 2015
Rating: 5.00/5 Votes: 2 Popularity: 1.51
Licence: GPL3 Views: 21,796
Bookmarked: 2
Downloaded: 0
Please
Sign up or sign in
to vote.
For my latest project I wanted to communicate with a Cisco device over serial via the console port with my python program.
Programming Languages
VC++
PNG Image Steganography with libpng
21 Apr 2013 Updated:
22 Apr 2013
Rating: 4.96/5 Votes: 16 Popularity: 5.84
Licence: GPL3 Views: 61,827
Bookmarked: 33
Downloaded: 4,793
Please
Sign up or sign in
to vote.
Performing steganography on PNG images
Average blogs rating: 4.80
All Topics
Failed to retrieve directory listing filezilla connecting to IIS FTP behind NAT [Technical Blog]
2 Aug 2014 Updated:
2 Aug 2014
Rating: 0.00/5 Votes: 0 Popularity: 0.00
Licence: GPL3 Views: 33,696
Bookmarked: 0
Downloaded: 0
Please
Sign up or sign in
to vote.
Just recently I was setting up IIS with FTPS and had a bear of a time getting it to work. Both because I needed to learn a bit about FTP and Microsoft’s scheme for getting things configured wasn’t exactly what I’d call intuitive.
Giving Automated Fuzzing a Trial Run with Peach [Technical Blog]
2 Aug 2014 Updated:
2 Aug 2014
Rating: 0.00/5 Votes: 0 Popularity: 0.00
Licence: GPL3 Views: 7,270
Bookmarked: 0
Downloaded: 0
Please
Sign up or sign in
to vote.
I’ve never found my own bugs and written my own exploits and that’s a skill I’d like to develop. In that vain, I’ve been trying out the Peach 3 Fuzzer.
FTPoverEmail Alpha [Technical Blog]
24 Aug 2014 Updated:
24 Aug 2014
Rating: 0.00/5 Votes: 0 Popularity: 0.00
Licence: GPL3 Views: 6,230
Bookmarked: 2
Downloaded: 0
Please
Sign up or sign in
to vote.
FTPoverEmail Alpha
IPv6 – What is the Service Block Model? [Technical Blog]
17 Sep 2014 Updated:
17 Sep 2014
Rating: 5.00/5 Votes: 1 Popularity: 0.00
Licence: GPL3 Views: 9,080
Bookmarked: 0
Downloaded: 0
Please
Sign up or sign in
to vote.
This article covers the service block model design methodology for IPv6 migration.
What is the Symbol Table and What is the Global Offset Table? [Technical Blog]
21 Sep 2015 Updated:
21 Sep 2015
Rating: 0.00/5 Votes: 0 Popularity: 0.00
Licence: GPL3 Views: 25,784
Bookmarked: 2
Downloaded: 0
Please
Sign up or sign in
to vote.
Introduction When I first sought to understand the symbol table and the global offset table (GOT) I found bits and pieces of information, but I had trouble getting the whole picture.
Desktop Programming
MFC
Python – Search Youtube for Video [Technical Blog]
5 Feb 2015 Updated:
5 Feb 2015
Rating: 5.00/5 Votes: 4 Popularity: 3.01
Licence: GPL3 Views: 48,435
Bookmarked: 6
Downloaded: 0
Please
Sign up or sign in
to vote.
This code is for Python 3. I was surprised to discover that I couldn’t really find a good way to do this when I Googled for a solution. I just kept getting results for Google’s youtube API, which is great… but also massive overkill for what I wanted to do.
Mathematics
Integer Overflow in Hearthstone [Technical Blog]
30 Jul 2014 Updated:
30 Jul 2014
Rating: 5.00/5 Votes: 1 Popularity: 0.00
Licence: GPL3 Views: 17,195
Bookmarked: 0
Downloaded: 0
Please
Sign up or sign in
to vote.
Integer Overflow in Hearthstone
Productivity Apps and Services
Sharepoint
Setting Up a VPN Server on Ubuntu Using OpenVPN [Technical Blog]
28 Jul 2014 Updated:
28 Jul 2014
Rating: 5.00/5 Votes: 1 Popularity: 0.00
Licence: GPL3 Views: 21,441
Bookmarked: 5
Downloaded: 0
Please
Sign up or sign in
to vote.
Below is a setup for OpenVPN on Ubuntu 14.04. With some modifications, it should work on most flavors of Linux Much of the setup came from https://help.ubuntu.com/14.04/serverguide/openvpn.html with a couple of modifications to work out any bugs I ran across. Keep in mind this is for a routed VPN.
Programming Languages
Python
Replace All Spaces (Or Any Other Character) Between Quotes in Python [Technical Blog]
24 Jan 2015 Updated:
24 Jan 2015
Rating: 4.40/5 Votes: 2 Popularity: 1.32
Licence: GPL3 Views: 15,284
Bookmarked: 2
Downloaded: 0
Please
Sign up or sign in
to vote.
Replace all spaces (or any other character) between quotes in Python
FTPoverEmail Beta v1.00 [Technical Blog]
9 Sep 2014 Updated:
9 Sep 2014
Rating: 5.00/5 Votes: 1 Popularity: 0.00
Licence: GPL3 Views: 5,760
Bookmarked: 2
Downloaded: 0
Please
Sign up or sign in
to vote.
FTPoverEmail Beta v1.00
Using Python for Cisco Serial I/O [Technical Blog]
3 Feb 2015 Updated:
3 Feb 2015
Rating: 0.00/5 Votes: 0 Popularity: 0.00
Licence: GPL3 Views: 9,770
Bookmarked: 0
Downloaded: 0
Please
Sign up or sign in
to vote.
Using Python for Cisco Serial I/O
Ruby
Checking Open Ports with Ruby [Technical Blog]
30 Jul 2014 Updated:
30 Jul 2014
Rating: 0.00/5 Votes: 0 Popularity: 0.00
Licence: GPL3 Views: 6,530
Bookmarked: 1
Downloaded: 0
Please
Sign up or sign in
to vote.
How to check open ports with Ruby
RNG
Is the XCOM PRNG Broken? [Technical Blog]
30 Jul 2014 Updated:
30 Jul 2014
Rating: 4.00/5 Votes: 1 Popularity: 0.00
Licence: GPL3 Views: 4,460
Bookmarked: 1
Downloaded: 0
Please
Sign up or sign in
to vote.
Is the XCOM PRNG broken?
STL
How Did They Come Up with 159 Million Million Possibilities in the Imitation Game? [Technical Blog]
5 Apr 2015 Updated:
5 Apr 2015
Rating: 5.00/5 Votes: 1 Popularity: 0.00
Licence: GPL3 Views: 17,242
Bookmarked: 0
Downloaded: 0
Please
Sign up or sign in
to vote.
How did they come up with 159 million million possibilities in the imitation game?
Average tips rating: 3.79
Cmd
Pentesting: Runas [Tip/Trick]
2 Sep 2016 Updated:
2 Sep 2016
Rating: 3.00/5 Votes: 2 Popularity: 0.90
Licence: GPL3 Views: 12,992
Bookmarked: 2
Downloaded: 0
Please
Sign up or sign in
to vote.
Pentesting: Runas
General Programming
Algorithms
Python Implementation of IP Checksum [Tip/Trick]
17 Sep 2012 Updated:
18 Sep 2012
Rating: 5.00/5 Votes: 1 Popularity: 0.00
Licence: CPOL Views: 33,290
Bookmarked: 4
Downloaded: 0
Please
Sign up or sign in
to vote.
IP checksum implementation in python
Sorting
C++ Count Sort Implementation [Tip/Trick]
26 Nov 2011 Updated:
28 Nov 2011
Rating: 2.50/5 Votes: 3 Popularity: 1.19
Licence: CPOL Views: 40,623
Bookmarked: 2
Downloaded: 0
Please
Sign up or sign in
to vote.
A basic copiable count sort implementation.
LAN
How to Use Proxychains / Forwarding Ports [Tip/Trick]
8 Aug 2013 Updated:
9 Aug 2013
Rating: 4.67/5 Votes: 2 Popularity: 1.40
Licence: GPL3 Views: 145,456
Bookmarked: 6
Downloaded: 0
Please
Sign up or sign in
to vote.
Using proxychains for pivoting through routers and other multi-homed devices
Average reference rating:
No reference articles have been posted.
Average project rating:
No projects have been posted.
Grant Curell
United States
Grant is a specialist in computer security and networking. He holds a bachelors degree in Computer Science and Engineering from the Ohio State University. Certs: CCNA, CCNP, CCDA, CCDP, Sec+, and GCIH.