Q:

how find function in source

In researching how to best utilize OpenSSH, I looked into SHA hashing and found a post discussing the SHA2 functions in OpenSSL. The accepted answer states

SHA-224 and SHA-256 are the same function, save for an internal parameter

I'm sure that this is true but, I'd like to take a look-see myself. Just so I know how it looks. Specifically, I'd like to look at the function that does the SHA-224 and SHA-256 hashing.
As an aside, this question important to me because I've taken a few intro to programming (C and perl) courses and these have always left me feeling like "OK, so what? How does this do something useful". Perhaps by poking around a bit I'll see what useful code looks like, learn a bit about how open source software is organized, and take a small step toward contributing to something useful myself. 
So I downloaded the OpenSSL source code (openssl-1.0.2e.tar.gz), unpacked it and thought "Wow, where do I start?"
So, um, where do I start? There are lots of files and lots of directories. Is there a convention for where things are put? Is there a development environment I should install that would help to see the bigger picture? Any help to get me started in the right direction would be appreciated.

A:

Google is a good start. useful keywords:
openssl sha256

Second result brings you to the header file openssl/sha.h, where you find how are the functions called in the code:
 int SHA224_Init(SHA256_CTX *c);
 int SHA224_Update(SHA256_CTX *c, const void *data, size_t len);
 int SHA224_Final(unsigned char *md, SHA256_CTX *c);
 unsigned char *SHA224(const unsigned char *d, size_t n,
      unsigned char *md);

 int SHA256_Init(SHA256_CTX *c);
 int SHA256_Update(SHA256_CTX *c, const void *data, size_t len);
 int SHA256_Final(unsigned char *md, SHA256_CTX *c);
 unsigned char *SHA256(const unsigned char *d, size_t n,
      unsigned char *md);

And then is nothing easier then clone openssl git and grep through it, for example github should be enough. Now, keyword SHA256_Init. And hooray, the implementation is here in
openssl/crypto/sha/sha256.c

