148a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen/*
248a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen * Copyright (C) 2015 The Android Open Source Project
348a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen *
448a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen * Licensed under the Apache License, Version 2.0 (the "License");
548a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen * you may not use this file except in compliance with the License.
648a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen * You may obtain a copy of the License at
748a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen *
848a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen *      http://www.apache.org/licenses/LICENSE-2.0
948a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen *
1048a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen * Unless required by applicable law or agreed to in writing, software
1148a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen * distributed under the License is distributed on an "AS IS" BASIS,
1248a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1348a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen * See the License for the specific language governing permissions and
1448a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen * limitations under the License.
1548a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen */
1648a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen
1748a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen/*
1848a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen * Zip tool to remove dynamic timestamps
1948a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen */
2048a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen#include "ZipFile.h"
2148a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen
2248a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen#include <stdlib.h>
2348a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen#include <stdio.h>
2448a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen
2548a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsenusing namespace android;
2648a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen
2748a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsenstatic void usage(void)
2848a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen{
2948a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen    fprintf(stderr, "Zip timestamp utility\n");
3048a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen    fprintf(stderr, "Copyright (C) 2015 The Android Open Source Project\n\n");
3148a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen    fprintf(stderr, "Usage: ziptime file.zip\n");
3248a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen}
3348a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen
3448a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsenint main(int argc, char* const argv[])
3548a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen{
3648a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen    if (argc != 2) {
3748a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen        usage();
3848a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen        return 2;
3948a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen    }
4048a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen
4148a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen    ZipFile zip;
4248a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen    if (zip.rewrite(argv[1]) != 0) {
4348a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen        fprintf(stderr, "Unable to rewrite '%s' as zip archive\n", argv[1]);
4448a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen        return 1;
4548a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen    }
4648a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen
4748a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen    return 0;
4848a621c2779c74cba3555c96e3fbc7b1989ac90bDan Willemsen}
49