]> the.earth.li Git - onak.git/blobdiff - keydb_hkp.c
Add ability to drop overly large packets
[onak.git] / keydb_hkp.c
index 65b6bdcf4e22e1609f620aaa8356b16a0f0e3777..b4540e15ab915d5cf01542a72cb87964106c4040 100644 (file)
  * more details.
  *
  * You should have received a copy of the GNU General Public License along with
- * this program; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * this program.  If not, see <https://www.gnu.org/licenses/>.
  */
 
+#include <inttypes.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
-#include <unistd.h>
 #include <curl/curl.h>
 
 #include "armor.h"
@@ -36,7 +36,7 @@
 struct onak_hkp_dbctx {
        struct onak_db_config *config; /* Our DB config info */
        CURL *curl;
-       char hkpbase[1024];
+       char hkpbase[512];
 };
 
 static int hkp_parse_url(struct onak_hkp_dbctx *privctx, const char *url)
@@ -49,11 +49,11 @@ static int hkp_parse_url(struct onak_hkp_dbctx *privctx, const char *url)
        proto[0] = host[0] = 0;
        port = 0;
 
-       matched = sscanf(url, "%5[a-z]://%256[a-zA-Z0-9.]:%u", proto, host,
+       matched = sscanf(url, "%5[a-z]://%256[a-zA-Z0-9.-]:%u", proto, host,
                        &port);
        if (matched < 2) {
                proto[0] = 0;
-               sscanf(url, "%256[a-zA-Z0-9.]:%u", host, &port);
+               sscanf(url, "%256[a-zA-Z0-9.-]:%u", host, &port);
        }
 
        if (host[0] == 0) {