Commit aeef988e authored by Matthew Burket's avatar Matthew Burket
Browse files

mem and comments

parent 31b8fc0e
Loading
Loading
Loading
Loading
Loading
+68 −84
Original line number Original line Diff line number Diff line
@@ -12,7 +12,11 @@
  </component>
  </component>
  <component name="ChangeListManager">
  <component name="ChangeListManager">
    <list default="true" id="36048fb3-fc75-499f-9004-4a458a9d082e" name="Default" comment="">
    <list default="true" id="36048fb3-fc75-499f-9004-4a458a9d082e" name="Default" comment="">
      <change beforePath="$PROJECT_DIR$/CMakeLists.txt" beforeDir="false" afterPath="$PROJECT_DIR$/CMakeLists.txt" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/connect.c" beforeDir="false" afterPath="$PROJECT_DIR$/connect.c" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/connect.h" beforeDir="false" afterPath="$PROJECT_DIR$/connect.h" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/main.c" beforeDir="false" afterPath="$PROJECT_DIR$/main.c" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/main.c" beforeDir="false" afterPath="$PROJECT_DIR$/main.c" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/urlParse.c" beforeDir="false" afterPath="$PROJECT_DIR$/urlParse.c" afterDir="false" />
    </list>
    </list>
    <ignored path="$PROJECT_DIR$/cmake-build-debug/" />
    <ignored path="$PROJECT_DIR$/cmake-build-debug/" />
    <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
    <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
@@ -25,13 +29,13 @@
  <component name="ExecutionTargetManager" SELECTED_TARGET="CMakeBuildProfile:Debug" />
  <component name="ExecutionTargetManager" SELECTED_TARGET="CMakeBuildProfile:Debug" />
  <component name="FileEditorManager">
  <component name="FileEditorManager">
    <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
    <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
      <file leaf-file-name="buffer.c" pinned="false" current-in-tab="false">
      <file leaf-file-name="main.c" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/buffer.c">
        <entry file="file://$PROJECT_DIR$/main.c">
          <provider selected="true" editor-type-id="text-editor">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="539">
            <state relative-caret-position="291">
              <caret line="62" column="9" selection-start-line="62" selection-start-column="9" selection-end-line="62" selection-end-column="9" />
              <caret line="62" column="6" selection-start-line="62" selection-start-column="6" selection-end-line="62" selection-end-column="6" />
              <folding>
              <folding>
                <element signature="e#40#59#0" expanded="true" />
                <element signature="e#0#19#0" expanded="true" />
              </folding>
              </folding>
            </state>
            </state>
          </provider>
          </provider>
@@ -40,50 +44,29 @@
      <file leaf-file-name="urlParse.c" pinned="false" current-in-tab="false">
      <file leaf-file-name="urlParse.c" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/urlParse.c">
        <entry file="file://$PROJECT_DIR$/urlParse.c">
          <provider selected="true" editor-type-id="text-editor">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="468">
            <state relative-caret-position="612">
              <caret line="29" selection-start-line="29" selection-end-line="29" />
              <caret line="37" lean-forward="true" selection-start-line="37" selection-end-line="37" />
            </state>
          </provider>
        </entry>
      </file>
      <file leaf-file-name="cmake_install.cmake" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/cmake-build-debug/cmake_install.cmake">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="662">
              <caret line="42" column="52" lean-forward="true" selection-start-line="42" selection-start-column="52" selection-end-line="42" selection-end-column="52" />
            </state>
          </provider>
        </entry>
      </file>
      <file leaf-file-name="main.c" pinned="false" current-in-tab="true">
        <entry file="file://$PROJECT_DIR$/main.c">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="509">
              <caret line="75" column="24" selection-start-line="75" selection-start-column="24" selection-end-line="75" selection-end-column="24" />
              <folding>
                <element signature="e#0#19#0" expanded="true" />
              </folding>
            </state>
            </state>
          </provider>
          </provider>
        </entry>
        </entry>
      </file>
      </file>
      <file leaf-file-name="connect.c" pinned="false" current-in-tab="false">
      <file leaf-file-name="connect.c" pinned="false" current-in-tab="true">
        <entry file="file://$PROJECT_DIR$/connect.c">
        <entry file="file://$PROJECT_DIR$/connect.c">
          <provider selected="true" editor-type-id="text-editor">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="558">
            <state relative-caret-position="325">
              <caret line="31" column="29" selection-start-line="31" selection-start-column="29" selection-end-line="31" selection-end-column="29" />
              <caret line="102" column="25" selection-start-line="102" selection-start-column="25" selection-end-line="102" selection-end-column="42" />
              <folding>
              <folding>
                <element signature="e#42#62#0" expanded="true" />
                <element signature="e#41#61#0" expanded="true" />
              </folding>
              </folding>
            </state>
            </state>
          </provider>
          </provider>
        </entry>
        </entry>
      </file>
      </file>
      <file leaf-file-name="connect.h" pinned="false" current-in-tab="false">
      <file leaf-file-name="CMakeLists.txt" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/connect.h">
        <entry file="file://$PROJECT_DIR$/CMakeLists.txt">
          <provider selected="true" editor-type-id="text-editor">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="198">
            <state>
              <caret line="17" column="20" selection-start-line="17" selection-start-column="5" selection-end-line="17" selection-end-column="20" />
              <caret column="34" selection-start-column="34" selection-end-column="34" />
            </state>
            </state>
          </provider>
          </provider>
        </entry>
        </entry>
@@ -98,6 +81,7 @@
      <find># Is This</find>
      <find># Is This</find>
      <find>port</find>
      <find>port</find>
      <find>80</find>
      <find>80</find>
      <find>free</find>
    </findStrings>
    </findStrings>
  </component>
  </component>
  <component name="Git.Settings">
  <component name="Git.Settings">
@@ -110,15 +94,15 @@
        <option value="$PROJECT_DIR$/cmake-build-debug/connect.h" />
        <option value="$PROJECT_DIR$/cmake-build-debug/connect.h" />
        <option value="$PROJECT_DIR$/buffer.h" />
        <option value="$PROJECT_DIR$/buffer.h" />
        <option value="$PROJECT_DIR$/LICENSE" />
        <option value="$PROJECT_DIR$/LICENSE" />
        <option value="$PROJECT_DIR$/CMakeLists.txt" />
        <option value="$PROJECT_DIR$/README.md" />
        <option value="$PROJECT_DIR$/README.md" />
        <option value="$PROJECT_DIR$/connect.h" />
        <option value="$PROJECT_DIR$/connect.h" />
        <option value="$PROJECT_DIR$/buffer.c" />
        <option value="$PROJECT_DIR$/buffer.c" />
        <option value="$PROJECT_DIR$/,gitignore" />
        <option value="$PROJECT_DIR$/,gitignore" />
        <option value="$PROJECT_DIR$/urlParse.h" />
        <option value="$PROJECT_DIR$/urlParse.h" />
        <option value="$PROJECT_DIR$/connect.c" />
        <option value="$PROJECT_DIR$/connect.c" />
        <option value="$PROJECT_DIR$/urlParse.c" />
        <option value="$PROJECT_DIR$/main.c" />
        <option value="$PROJECT_DIR$/main.c" />
        <option value="$PROJECT_DIR$/CMakeLists.txt" />
        <option value="$PROJECT_DIR$/urlParse.c" />
      </list>
      </list>
    </option>
    </option>
  </component>
  </component>
@@ -185,7 +169,7 @@
  </component>
  </component>
  <component name="RunManager" selected="Application.http_client">
  <component name="RunManager" selected="Application.http_client">
    <configuration name="Build All" type="CMakeRunConfiguration" factoryName="Application" PASS_PARENT_ENVS_2="true" CONFIG_NAME="Debug" RUN_TARGET_PROJECT_NAME="coms352_project2_part1" RUN_TARGET_NAME="http_client" EXPLICIT_BUILD_TARGET_NAME="all" />
    <configuration name="Build All" type="CMakeRunConfiguration" factoryName="Application" PASS_PARENT_ENVS_2="true" CONFIG_NAME="Debug" RUN_TARGET_PROJECT_NAME="coms352_project2_part1" RUN_TARGET_NAME="http_client" EXPLICIT_BUILD_TARGET_NAME="all" />
    <configuration name="http_client" type="CMakeRunConfiguration" factoryName="Application" PROGRAM_PARAMS="-h -d 12:10:12 http://google.com " PASS_PARENT_ENVS_2="true" PROJECT_NAME="coms352_project2_part1" TARGET_NAME="http_client" CONFIG_NAME="Debug" RUN_TARGET_PROJECT_NAME="coms352_project2_part1" RUN_TARGET_NAME="http_client" />
    <configuration name="http_client" type="CMakeRunConfiguration" factoryName="Application" PROGRAM_PARAMS="-d 1 http://127.0.0.1:26880/cmake_install.cmake  " PASS_PARENT_ENVS_2="true" PROJECT_NAME="coms352_project2_part1" TARGET_NAME="http_client" CONFIG_NAME="Debug" RUN_TARGET_PROJECT_NAME="coms352_project2_part1" RUN_TARGET_NAME="http_client" />
    <list>
    <list>
      <item itemvalue="Application.Build All" />
      <item itemvalue="Application.Build All" />
      <item itemvalue="Application.http_client" />
      <item itemvalue="Application.http_client" />
@@ -211,7 +195,7 @@
    <servers />
    <servers />
  </component>
  </component>
  <component name="TimeTrackingManager">
  <component name="TimeTrackingManager">
    <option name="totallyTimeSpent" value="26090000" />
    <option name="totallyTimeSpent" value="30782000" />
  </component>
  </component>
  <component name="ToolWindowManager">
  <component name="ToolWindowManager">
    <frame x="0" y="27" width="2560" height="1573" extended-state="6" />
    <frame x="0" y="27" width="2560" height="1573" extended-state="6" />
@@ -222,10 +206,11 @@
      <window_info anchor="bottom" id="Messages" order="7" weight="0.33053222" />
      <window_info anchor="bottom" id="Messages" order="7" weight="0.33053222" />
      <window_info anchor="bottom" id="CMake" order="7" />
      <window_info anchor="bottom" id="CMake" order="7" />
      <window_info anchor="bottom" id="Event Log" order="7" side_tool="true" />
      <window_info anchor="bottom" id="Event Log" order="7" side_tool="true" />
      <window_info anchor="bottom" id="Run" order="2" weight="0.32843137" />
      <window_info anchor="bottom" id="Find" order="1" />
      <window_info active="true" anchor="bottom" id="Run" order="2" visible="true" weight="0.32843137" />
      <window_info anchor="bottom" id="Version Control" order="7" />
      <window_info anchor="bottom" id="Version Control" order="7" />
      <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
      <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
      <window_info active="true" anchor="bottom" id="Terminal" order="7" visible="true" weight="0.3312325" />
      <window_info anchor="bottom" id="Terminal" order="7" weight="0.3312325" />
      <window_info anchor="bottom" id="Debug" order="3" weight="0.39985994" />
      <window_info anchor="bottom" id="Debug" order="3" weight="0.39985994" />
      <window_info id="Favorites" order="2" side_tool="true" />
      <window_info id="Favorites" order="2" side_tool="true" />
      <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
      <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
@@ -243,7 +228,6 @@
      <window_info anchor="bottom" id="Message" order="0" />
      <window_info anchor="bottom" id="Message" order="0" />
      <window_info anchor="bottom" id="Event Log" order="7" side_tool="true" />
      <window_info anchor="bottom" id="Event Log" order="7" side_tool="true" />
      <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
      <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
      <window_info anchor="bottom" id="Find" order="1" />
      <window_info anchor="bottom" id="CMake" order="7" />
      <window_info anchor="bottom" id="CMake" order="7" />
      <window_info id="Favorites" order="2" side_tool="true" />
      <window_info id="Favorites" order="2" side_tool="true" />
    </layout>
    </layout>
@@ -309,7 +293,7 @@
        <state relative-caret-position="180">
        <state relative-caret-position="180">
          <caret line="10" column="31" selection-start-line="10" selection-start-column="31" selection-end-line="10" selection-end-column="31" />
          <caret line="10" column="31" selection-start-line="10" selection-start-column="31" selection-end-line="10" selection-end-column="31" />
          <folding>
          <folding>
            <element signature="e#42#62#0" expanded="true" />
            <element signature="e#41#61#0" expanded="true" />
          </folding>
          </folding>
        </state>
        </state>
      </provider>
      </provider>
@@ -411,7 +395,7 @@
        <state relative-caret-position="1890">
        <state relative-caret-position="1890">
          <caret line="105" selection-start-line="105" selection-end-line="105" />
          <caret line="105" selection-start-line="105" selection-end-line="105" />
          <folding>
          <folding>
            <element signature="e#42#62#0" expanded="true" />
            <element signature="e#41#61#0" expanded="true" />
          </folding>
          </folding>
        </state>
        </state>
      </provider>
      </provider>
@@ -441,7 +425,7 @@
        <state relative-caret-position="1890">
        <state relative-caret-position="1890">
          <caret line="105" selection-start-line="105" selection-end-line="105" />
          <caret line="105" selection-start-line="105" selection-end-line="105" />
          <folding>
          <folding>
            <element signature="e#42#62#0" expanded="true" />
            <element signature="e#41#61#0" expanded="true" />
          </folding>
          </folding>
        </state>
        </state>
      </provider>
      </provider>
@@ -471,7 +455,7 @@
        <state relative-caret-position="144">
        <state relative-caret-position="144">
          <caret line="8" column="3" lean-forward="true" selection-start-line="8" selection-start-column="3" selection-end-line="8" selection-end-column="3" />
          <caret line="8" column="3" lean-forward="true" selection-start-line="8" selection-start-column="3" selection-end-line="8" selection-end-column="3" />
          <folding>
          <folding>
            <element signature="e#42#62#0" expanded="true" />
            <element signature="e#41#61#0" expanded="true" />
          </folding>
          </folding>
        </state>
        </state>
      </provider>
      </provider>
@@ -501,7 +485,7 @@
        <state relative-caret-position="1620">
        <state relative-caret-position="1620">
          <caret line="90" selection-start-line="90" selection-end-line="90" />
          <caret line="90" selection-start-line="90" selection-end-line="90" />
          <folding>
          <folding>
            <element signature="e#42#62#0" expanded="true" />
            <element signature="e#41#61#0" expanded="true" />
          </folding>
          </folding>
        </state>
        </state>
      </provider>
      </provider>
@@ -546,7 +530,7 @@
        <state relative-caret-position="180">
        <state relative-caret-position="180">
          <caret line="10" column="31" selection-start-line="10" selection-start-column="31" selection-end-line="10" selection-end-column="31" />
          <caret line="10" column="31" selection-start-line="10" selection-start-column="31" selection-end-line="10" selection-end-column="31" />
          <folding>
          <folding>
            <element signature="e#42#62#0" expanded="true" />
            <element signature="e#41#61#0" expanded="true" />
          </folding>
          </folding>
        </state>
        </state>
      </provider>
      </provider>
@@ -569,13 +553,6 @@
        </state>
        </state>
      </provider>
      </provider>
    </entry>
    </entry>
    <entry file="file://$PROJECT_DIR$/buffer.h">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="288">
          <caret line="16" column="60" selection-start-line="16" selection-start-column="60" selection-end-line="16" selection-end-column="60" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/README.md">
    <entry file="file://$PROJECT_DIR$/README.md">
      <provider selected="true" editor-type-id="text-editor">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="144">
        <state relative-caret-position="144">
@@ -583,13 +560,6 @@
        </state>
        </state>
      </provider>
      </provider>
    </entry>
    </entry>
    <entry file="file://$PROJECT_DIR$/CMakeLists.txt">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="90">
          <caret line="5" column="26" selection-start-line="5" selection-start-column="15" selection-end-line="5" selection-end-column="26" />
        </state>
      </provider>
    </entry>
    <entry file="file:///usr/include/sys/socket.h">
    <entry file="file:///usr/include/sys/socket.h">
      <provider selected="true" editor-type-id="text-editor">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="309">
        <state relative-caret-position="309">
@@ -619,56 +589,70 @@
        </state>
        </state>
      </provider>
      </provider>
    </entry>
    </entry>
    <entry file="file://$PROJECT_DIR$/cmake-build-debug/cmake_install.cmake">
    <entry file="file:///usr/include/netdb.h">
      <provider selected="true" editor-type-id="text-editor">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="662">
        <state relative-caret-position="2150">
          <caret line="42" column="52" lean-forward="true" selection-start-line="42" selection-start-column="52" selection-end-line="42" selection-end-column="52" />
          <caret line="659" column="11" selection-start-line="659" selection-start-column="11" selection-end-line="659" selection-end-column="11" />
        </state>
        </state>
      </provider>
      </provider>
    </entry>
    </entry>
    <entry file="file:///usr/include/netdb.h">
    <entry file="file://$PROJECT_DIR$/buffer.h">
      <provider selected="true" editor-type-id="text-editor">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="2150">
        <state relative-caret-position="288">
          <caret line="659" column="11" selection-start-line="659" selection-start-column="11" selection-end-line="659" selection-end-column="11" />
          <caret line="16" column="60" selection-start-line="16" selection-start-column="60" selection-end-line="16" selection-end-column="60" />
        </state>
        </state>
      </provider>
      </provider>
    </entry>
    </entry>
    <entry file="file://$PROJECT_DIR$/connect.c">
    <entry file="file://$PROJECT_DIR$/buffer.c">
      <provider selected="true" editor-type-id="text-editor">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="558">
        <state relative-caret-position="1116">
          <caret line="31" column="29" selection-start-line="31" selection-start-column="29" selection-end-line="31" selection-end-column="29" />
          <caret line="62" column="9" selection-start-line="62" selection-start-column="9" selection-end-line="62" selection-end-column="9" />
          <folding>
          <folding>
            <element signature="e#42#62#0" expanded="true" />
            <element signature="e#40#59#0" expanded="true" />
          </folding>
          </folding>
        </state>
        </state>
      </provider>
      </provider>
    </entry>
    </entry>
    <entry file="file://$PROJECT_DIR$/urlParse.c">
    <entry file="file://$PROJECT_DIR$/cmake-build-debug/cmake_install.cmake">
      <provider selected="true" editor-type-id="text-editor">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="468">
        <state relative-caret-position="662">
          <caret line="29" selection-start-line="29" selection-end-line="29" />
          <caret line="42" column="52" lean-forward="true" selection-start-line="42" selection-start-column="52" selection-end-line="42" selection-end-column="52" />
        </state>
        </state>
      </provider>
      </provider>
    </entry>
    </entry>
    <entry file="file://$PROJECT_DIR$/buffer.c">
    <entry file="file://$PROJECT_DIR$/CMakeLists.txt">
      <provider selected="true" editor-type-id="text-editor">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="539">
        <state>
          <caret line="62" column="9" selection-start-line="62" selection-start-column="9" selection-end-line="62" selection-end-column="9" />
          <caret column="34" selection-start-column="34" selection-end-column="34" />
          <folding>
            <element signature="e#40#59#0" expanded="true" />
          </folding>
        </state>
        </state>
      </provider>
      </provider>
    </entry>
    </entry>
    <entry file="file://$PROJECT_DIR$/main.c">
    <entry file="file://$PROJECT_DIR$/main.c">
      <provider selected="true" editor-type-id="text-editor">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="509">
        <state relative-caret-position="291">
          <caret line="75" column="24" selection-start-line="75" selection-start-column="24" selection-end-line="75" selection-end-column="24" />
          <caret line="62" column="6" selection-start-line="62" selection-start-column="6" selection-end-line="62" selection-end-column="6" />
          <folding>
          <folding>
            <element signature="e#0#19#0" expanded="true" />
            <element signature="e#0#19#0" expanded="true" />
          </folding>
          </folding>
        </state>
        </state>
      </provider>
      </provider>
    </entry>
    </entry>
    <entry file="file://$PROJECT_DIR$/urlParse.c">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="612">
          <caret line="37" lean-forward="true" selection-start-line="37" selection-end-line="37" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/connect.c">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="325">
          <caret line="102" column="25" selection-start-line="102" selection-start-column="25" selection-end-line="102" selection-end-column="42" />
          <folding>
            <element signature="e#41#61#0" expanded="true" />
          </folding>
        </state>
      </provider>
    </entry>
  </component>
  </component>
</project>
</project>
 No newline at end of file
+1 −1
Original line number Original line Diff line number Diff line
cmake_minimum_required(VERSION 3.9)
cmake_minimum_required(VERSION 3.3)
project(coms352_project2_part1 C)
project(coms352_project2_part1 C)


set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD 11)
+12 −5
Original line number Original line Diff line number Diff line
//w
//
// Created by mburket on 3/29/18.
// Created by mburket on 3/29/18.
//
//


@@ -116,23 +116,30 @@ int execate_request(int socketfd, char *hostname, char *path, int head, int date
    return sentByte;
    return sentByte;
}
}


int get_result(int socketfd, GrowthBuffer *recvBuff, int recvBuffSize) {
/// Get result from the request
/// \param socketfd socket used to make the request
/// \param recvBuff buffer to send the request back in
/// \param recvBuffSize
/// \return 0 if success, otherwise not zero
int get_result(int socketfd, GrowthBuffer *recvBuff) {
    size_t bytesRecv;
    size_t bytesRecv;
    char revcData[recvBuffSize];
    char revcData[RECV_SIZE];


    while (1) {
    while (1) {
        errno = 0;
        bytesRecv = recv(socketfd, revcData, RECV_SIZE, 0);
        bytesRecv = recv(socketfd, revcData, RECV_SIZE, 0);
        if (bytesRecv == -1) {
        if (bytesRecv == -1) {
            fprintf(stderr, "\n Unable to recv data from socket.");
            fprintf(stderr, "\n Unable to recv data from socket. [Error %d]: %s\n", errno, strerror(errno));
            return -1;
            return -1;
        } else if (bytesRecv == 0) {
        } else if (bytesRecv == 0) {
            return  0;
            return  0;
        }
        }


        // Got something append it
        if (bytesRecv > 0) {
        if (bytesRecv > 0) {
            appendBuffer(recvBuff, revcData, bytesRecv);
            appendBuffer(recvBuff, revcData, bytesRecv);
        }
        }

        // Didn't anything, we are done
        if (bytesRecv < RECV_SIZE) {
        if (bytesRecv < RECV_SIZE) {
           return 0;
           return 0;
        }
        }
+1 −1
Original line number Original line Diff line number Diff line
@@ -18,6 +18,6 @@
void init_connection(char *hostname, int port, struct addrinfo **info);
void init_connection(char *hostname, int port, struct addrinfo **info);
int establish_connect(struct addrinfo *info);
int establish_connect(struct addrinfo *info);
int execate_request(int socketfd, char *hostname, char *path, int head, int date, char *date_string);
int execate_request(int socketfd, char *hostname, char *path, int head, int date, char *date_string);
int get_result(int socketfd, GrowthBuffer *recvBuff, int recvBuffSize);
int get_result(int socketfd, GrowthBuffer *recvBuff);


#endif //COMS352_PROJECT2_PART1_CONNECT_H
#endif //COMS352_PROJECT2_PART1_CONNECT_H
+17 −8
Original line number Original line Diff line number Diff line
@@ -6,15 +6,17 @@
#include "buffer.h"
#include "buffer.h"
#include "urlParse.h"
#include "urlParse.h"


/// Main method for the program

///
/// \param argc
/// \param argv
/// \return


void show_help_exit(char *argv);
void show_help_exit(char *argv);


/// Main method for the program
///
/// \param argc count of args
/// \param argv arg vector
/// \return non-zero if error, otherwise 0
int main (int argc, char **argv) {
int main (int argc, char **argv) {
    // Setup values and memory for program
    int header_only = 0;
    int header_only = 0;
    int timeDelta = 0;
    int timeDelta = 0;
    char *cvalue = NULL;
    char *cvalue = NULL;
@@ -54,30 +56,37 @@ int main (int argc, char **argv) {
        }
        }
    }
    }


    // Advance index
    for (index = optind; index < argc; index++);
    for (index = optind; index < argc; index++);


    // No URL Exit
    if (argv[optind] == NULL) {
    if (argv[optind] == NULL) {
        show_help_exit(argv[0]);
        show_help_exit(argv[0]);
    }
    }


    // Setup Connection Memory
    char *host = malloc(sizeof(char) * 256);
    char *host = malloc(sizeof(char) * 256);
    int port = 80;
    int port = 80;
    char *page = malloc(sizeof(char) * 256);
    char *page = malloc(sizeof(char) * 256);
    // Parse the Url
    getUrlParts(argv[optind], &host, &port, &page);
    getUrlParts(argv[optind], &host, &port, &page);
    // Setup Connection
    init_connection(host, port, &addressInfo);
    init_connection(host, port, &addressInfo);
    int sockfd = establish_connect(addressInfo);
    int sockfd = establish_connect(addressInfo);
    // Fire Off Request
    execate_request(sockfd, host, page, header_only, timeDelta, cvalue);
    execate_request(sockfd, host, page, header_only, timeDelta, cvalue);


    // Setup for getting response
    GrowthBuffer gp;
    GrowthBuffer gp;
    initBuffer(&gp, 50);
    initBuffer(&gp, 50);
    get_result(sockfd, &gp, RECV_SIZE);
    // Get response
    get_result(sockfd, &gp);
    // Save to file
    // Save to file
    FILE *fp;
    FILE *fp;
    fp = fopen("response", "w");
    fp = fopen("response", "w");
    fwrite(gp.array, 1, strlen(gp.array), fp);
    fwrite(gp.array, 1, strlen(gp.array), fp);
    fclose(fp);
    fclose(fp);

    exit(EXIT_SUCCESS);

}
}


///  Show help
///  Show help
Loading